Friday

R12 Migration: 32bit–> 64bit Overview

I’ve had a few enquiries as to the steps I used to migrate our R12 environment from 32bit to 64bit.   Fortunately we were moving to new hardware at the same time, which made the process easier.  Instead of having to backup the server, wipe it and install 64bit Linux, I could just migrate the data.
  1. We use Red Hat Linux, so the first step was to install the 64bit version on the new server and make sure all the setup steps were performed.   

    Oracle E-Business Suite Installation and Upgrade Notes Release 12 (12.1.1) for Linux x86-64 [ID 761566.1]

    The above note details all of the operating system requirements and is very easy to follow.
  2. Shutdown the application tier.
  3. Export OLAP Analytic Workspaces.

    OLAP, as far as I know, is only used for the EPB (Enterprise, Planning & Budgeting) and ODP (Oracle Demand Planning) modules.  I asked Oracle Support if I needed to migrate OLAP if we aren’t or didn’t plan on using these modules.    They stated no, so I didn’t export them.   If you are using OLAP be aware of this note:

    EPB AW's Cannot Be Attached Or Do Not Exist [ID 795247.1]
  4. Execute preclone on the appsTier.        ($ADMIN_SCRIPTS_HOME/adpreclone.pl appsTier)
  5. Backup the controlfile to trace.
    alter database backup control file to trace;
  6. Move necessary files to the new servers:
    * Application software.
    * Database datafiles
    * Files under $ORACLE_HOME/dbs such as the password file, parameter file, etc.
    * Control File trace.
  7. Install the 11.2.0 64bit software on the new server, including the examples CD.
  8. Create the 9inls directory:
               perl $ORACLE_HOME/nls/data/old/cr9idata.pl
  9. Apply the necessary database patches:

    8328200,8993052,9081430,9218789,9318214,9500046,9535951,
    9644960,9657344,9719541,9756939

    NOTE: For Patch 9218789:  opatch napply -skip_subset -skip_duplicate

    You may have to set the following environment variable:
    export OPATCH_PLATFORM_ID=226

    Failed To Apply Patch Opatch Detects Platform 46 While Patch Is For 226 [ID 337812.1]
  10. On the new server create the control files using the backup you created in step 5. 
  11. Start the database in UPGRADE mode:
    STARTUP UPGRADE;
  12. Invalidate and recompile database objects:
    ?/rdbms/admin/utlirp
    ?/rdbms/admin/utlrp

    Note: If you didn’t export and drop the OLAP schema then you may hit error:

    ORA-03113 And ORA-03114 While Running Utlrp.sql [ID 578940.1]

    The solution is to run the following and re-run utlrp.sql:
    @?/olap/admin/olap.sql SYSAUX TEMP;

    I didn’t drop OLAP as per the instructions since I was migrating the database to a new server and the rollback plan in the event of a problem was simply to use the old servers.
  13. Import OLAP analytical workspaces

    If you need to migrate OLAP then this is where you would want to import them.
  14. On the appsTier set the following environment variable:
    LDEMULATION to elf_i386
  15. Update CTXORIG.xml

    This file can be found under <COMMON_TOP>/clone/context/apps
    Modify the following line:

    <platform oa_var="s_platform" osd="LINUX_X86-64">LINUX_X86-64</platform>
  16. Use Netca to create a new Listener.  Otherwise you’ll hit issues while trying to implement autoconfig.  Create it with the same name and port as the source environment.  Add an entry for the SID to the listener.ora.  Restart the listener.
  17. Implement Autconfig on DB Tier.

    This step struck me as weird because we haven’t built the appsTier yet.  So I basically just copied the old appsutil.zip from $INST_TOP on the source server.
    Unzip -o appsutil.zip in the DB Oracle Home

    Set TNS_ADMIN=$ORACLE_HOME/network/admin

    Create Context File
          perl adbldxml.pl


    Run autoconfig
       adconfig.sh contextfile=/u01/VIS/db/tech_st/11.2.0/appsutil/VIS_myserver.xml
  18. Execute Post Clone on the Apps Tier
    $COMMON_TOP/clone/bin
    perl adcfgclone.pl appsTier
  19. Deregister the old Application and Database servers.
  20. Modify $AD_TOP/bin/adrelinknew.sh

    CPP_LDFLAGS=' -L$(ORACLE_HOME)/lib -L$(ORACLE_HOME)/lib/stubs -lclntsh -Wl,--noinhibit-exec'
  21. Relink AD executables (Use AD Relink for this step)

    Relink Applications programs

    Generate message files

    Generate form files

    Generate report files

    Generate product JAR files
If I haven’t missed anything while modifying my document for this post, then that should be it.  Feel free to send me any questions.
As for step 19, it’s a bit detailed, so I will post details in a follow up shortly.

8 comments:

Anonymous said...

In creating context file for DB tier, i get this error.

perl adbldxml.pl
Starting context file generation for db tier..
Using JVM from /d01/oracle/FRESH/db_11g2/tech_st/11.2.0/jdk/jre/bin/java to
execute java programs..
APPS Password: apps
The log file for this adbldxml session is located at:
/d01/oracle/FRESH/db_11g2/tech_st/11.2.0/appsutil/log/adbldxml_02190939.log
UnsatisfiedLinkError exception loading native library: njni11
java.lang.UnsatisfiedLinkError: no njni11 in java.library.path
Could not Connect to the Database with the above parameters, Please answer the
Questions below

Enter Hostname of Database server: test122.pythis-vpmn.com
Enter Port of Database server: 1523
Enter SID of Database server: FRESH
Could not Connect to the Database : Socket read timed out
Could not Connect to the Database with the above parameters

The database instance and listener is started successful, and I can tnsping to SID. I dont understand why the error is
Could not Connect to the Database : Socket read timed out
Could not Connect to the Database with the above parameters

:(

Unknown said...

I am traveling and don't have my original document handy.. Check and make sure java (jre) is installed in the db home in appsutil.

Anonymous said...

I fixed this problem, and going to step 19 : Deregister the old Application and Database servers.

What i need to do in this step

Please help
Chuong

Anonymous said...

Hi Dave,

I follow your instruction and migrate successfull DB to 64 bit :), and now i am on migrating APPS.
Whenever you got the document please share me at chuong_ngn@yahoo.com.
So many thanks :)

Ravi said...

I am going through the same exact process and ran into the same exact error. How were you able to fix it ? Would greatly appreciate your help.

UnsatisfiedLinkError exception loading native library: njni11
java.lang.UnsatisfiedLinkError: no njni11 in java.library.path

Thanks
Ravi

Unknown said...

Take a look at
Running Autoconfig On DB Node Reports: UnsatisfiedLinkError Exception Loading Native Library: njni11 [ID 1087973.1]

Basically make sure you have the latest TXK patch.

An amazing experience with Oracle said...

Hi,
After migration of EBS R12.1.3 from RHEL 5.7(32 bit) to RHEL 5.7(64 bit) adadmin - relink operation is ending with these errors: cc: You_need_to_edit_adrelink_to_set_LDFLAGS: No such file or directory
make: *** [/data/APPSR12/R12/apps/apps_st/appl/fnd/12.0.0/bin/AFTBLGEN] Error
1
Done with link of fnd executable 'AFTBLGEN' on Thu Aug 15 19:40:54 MUT 2013

Relink of module "AFTBLGEN" failed.
See error messages above (also recorded in log file) for possible
reasons for the failure. Also, please check that the Unix userid
running adrelink has read, write, and execute permissions
on the directory /data/APPSR12/R12/apps/apps_st/appl/fnd/12.0.0/bin,
and that there is sufficient space remaining on the disk partition
containing your Oracle Applications installation.



Kindly let me know if you encountered any similar errors.

Thanks,

Gowda

kumar said...

Hi bro very nice documents pls share to me my mail id ksmavuri@gmail.com
Thanks in advance
In fact I'm doing this migration pls help me to share documents