Quantcast
Channel: database – Oracle DBA – Tips and Techniques
Viewing all articles
Browse latest Browse all 4

Migrating the 11i E-Business Suite database to Linux

$
0
0

This note describes the process used to migrate the EBS Release 11i (11.5.10.2) 10g R2 database from a Solaris platform to a Linux 64 bit platform.

As part of the Release 12 upgrade preparation, rather than perform  a Solaris/Linux platform migration and 11i to R12.1.3. upgrade at the same time, we are relocating the database to the Linux platform at  an earlier stage.

The idea was to perform the following operations before the R12.1 upgrade and not as part of the upgrade project to lower the risk, complexity as well as down time. This has been advocated by Oracle as well as one of the best practices and the preferred approach.

Our current configuration was:

Two nodes (both Solaris)

Node A – database plus concurrent manager

Node B – Forms/Web

 

Remember, Linux 64 bit is not supported for the 11i Application Tier. It is only supported in R12.

So at this stage, we are only relocating the database to the Linux 64 bit platform.

The configuration after the database move will be:

Node A –  concurrent manager  (Solaris)

Node B – Forms/Web (Solaris)

Node C –  Database (Linux)

This configuration will be interim until the Application Tiers are also migrated to Linux as part of the R12.1 upgrade.

 

Steps

 

On the Source (Solaris) Admin Tier:

 

1)

Download and apply patches 4872830 and 7225862.

2)

Connect as SYSTEM  and run:

$AD_TOP/patch/115/sql/adclondb.sql 10

(This will create the scripts –  adcrdb.sql and adpostcrdb.sql)

3)

Copy auque1.sql script from the $AU_TOP/patch/115/sql directory on the source administration server node to the source database server node

4)

Copy $AU_TOP/patch/115/import/auexpdp.dat from the source administration server node to the directory on the database server node where the export dump files are to be created

5)

Certain ConText and Spatial objects are not handled by the import process. The consolidated export/import utility patch 4872830 that was applied to the source administration server node earlier contains a perl script, dpost_imp.pl, that you can run to generate an AutoPatch driver file.

perl $AU_TOP/patch/115/driver/dpost_imp.pl dpostImp.drv

 

On the Source (Solaris) Database Tier:

 

As SYS as SYSDBA ….

1)

Purge the recycle bin.

SQL> purge dba_recyclebin

2)

Execute the auque1.sql script. This will generate the auque2.sql in the current directory.

SQL> @auque1.sql

3)

Create the directory for the Export Data Pump job

SQL> create directory dmpdir as ‘/u01/oracle/oraexp’;

4)

Edit the Export parameter file auexpdp.dat :

directory=dmpdir

dumpfile=aexp%U.dmp

filesize=1048576000

full=y

exclude=SCHEMA:”=’MDDATA'”

exclude=SCHEMA:”=’OLAPSYS'”

exclude=SCHEMA:”=’ORDSYS'”

exclude=SCHEMA:”=’DMSYS'”

exclude=SCHEMA:”=’OUTLN'”

exclude=SCHEMA:”=’ORDPLUGINS'”

#transform=oid:n

logfile=expdpapps.log

 

5)

Export the database

expdp “‘/ as sysdba'” parfile= auexpdp.dat

 

6)

After the export is complete, shut down the source (Solaris) database and listener.

 

On the Target (Linux) Database Tier:

1)

Create a working directory for all the database creation scripts

2)

Copy from the source admin tier $APPL_TOP/admin to this directory all these type of files:

*.pls

*.sql

 

3)

Edit the adcrdb.sql as required if the source and target servers have a different directory structure

Copy from the source database tier $ORACLE_HOME/dbs/init<SID>.ora to the target database $ORACLE_HOME/dbs

 

4)

Edit the init.ora as required if directory paths are different on source and target servers

For example we may need to change the parameters like Control_files, background_dump_dest, core_dump_deest, user_dump_dest, utl_file_dir

Comment out  the parameters undo_tablespace and undo_management

 

5)

Create nls/data/9idata directory.

On the database server node, as the owner of the Oracle RDBMS file system and database instance, run the $ORACLE_HOME/nls/data/old/cr9idata.pl script to create the $ORACLE_HOME/nls/data/9idata directory.

Ensure the environment variable ORA_NLS10 points to this location.

 

6)

Ensure environment variables on the target database server have been properly set up – ORACLE_HOME and ORACLE_SID

 

7)

Create the target database instance

SQL> startup nomount pfile=’init<ORACLE_SID>.ora’;

SQL> @adcrdb.sql

 

8)

After target database instance created, shutdown the instance

Enable AUM in the database – remove the comments earlier made for the parameters undo_tablespace and undo_management

 

SQL>  create spfile from pfile;

SQL> startup;

 

9)

Setup the SYS schema

 

As SYS as SYSDBA run

SQL> @addb1020.sql

 

10)

Setup the SYSTEM schema

 

Connect as SYSTEM/manager

SQL>@adsy1020.sql

SQL> @ adsysapp2.sql

 

11)

Install Java Virtual Machine

As SYSTEM

SQL> @adjv1020.sql

 

12)

Install other required components like XDB,OLAP, interMedia, ConText …

 

As SYSTEM

SQL> @admsc1020.sql FALSE SYSAUX TEMP

 

13)

Run adpostcrdb.sql script to convert tablespaces to locally managed

 

As SYS as SYSDBA

SQL>@adpostcrdb.sql

 

14)

Disable automatic gathering of statistics

 

SQL> shutdown immediate;

SQL> startup restrict;

SQL> @adstats.sql

 

Preparation for import

 

1)

Copy all the export dump files and the export parameter file  from source database node to appropriate directory on the target database node

2)

If we have database objects which have external dependencies resolved via database links, then copy the target database tnsnames.ora file to the source database $ORACLE_HOME/network/admin. This will ensure objects based on database links will compile when the import is happening as well as when we run the utlrp.sql script after the import

3)

Shutdown and restart the database

4)

If ARCHIVELOG mode is enabled turn off archiving

5)

Create directory for Import Data Pump

6)

Set parameter resumable_timeout to 7200 (2 hours)

7)

Turn on autoextend for all the database data files as well as temporary files

8)

Edit the export parameter file  – rename it to auimp.dat

directory=dmpdir

dumpfile=aexp%U.dmp

full=y

transform=oid:n

logfile=import.log

 

Importing the database

 

from a VNC session start the import

impdp “‘/ as sysdba'” parfile= auimp.dat

 

In our case database size was 150 GB and import took 6 hours.

Monitor the import log as well as the database alert log for any errors related to space or import data pump job hanging.

May encounter a MAXEXTENTS reached error for ‘DR$FND_LOBS_CTX$I’ and the import will hang – we will have to use the ALTER TABLE <table_name>  storage (maxextents unlimited) command to resume the import data pump job in case it is hanging

 

After the Import

 

1)

Reset advanced queues

As SYS as SYSDBA run

SQL> @auque2.sql

 

2)

Run adgrants.sql

As SYS as SYSDBA run

SQL> @adgrants.sql <APPLSYS schema name>

 

3)

Grant create procedure privilege on CTXSYS

Connect as APPS user

SQL> @adctxprv.sql <SYSTEM password> CTXSYS

 

4)

Create OWA_MATCH package

Download patch 3835781 and unzip on the target database node

As SYS as SYSDBA

SQL> @patch.sql

 

5)

Gather statistics for SYS schema

shutdown normal;

startup restrict;

@adstats.sql

shutdown normal;

startup;

 

6)

Recompile INVALID objects

SQL> @?/rdbms/admin/utlrp.sql

 

7)

Compare object count in APPS and APPLSYS schemas in both source and target database – identify any missing objects

 

8)

Fix Korean lexers

sqlplus “/ as sysdba” @$ORACLE_HOME/ctx/sample/script/drkorean.sql

 

Note – the ctx/sample directory is installed when you install the Companion CD

 

 

Implement and run AutoConfig

(ensure database listener is running at this stage)

 

1)

connect as apps and execute the following

EXEC FND_CONC_CLONE.SETUP_CLEAN;

Commit;

 

2)

Create the appsutil.zip file

 On  the source  Application Tier (as the APPLMGR user)

 

  • Log in to the APPL_TOP        environment (source the environment file)
  • Create appsutil.zip file
    perl        <AD_TOP>/bin/admkappsutil.pl
  • This will create        appsutil.zip in $APPL_TOP/admin/out .

 

On the Database Tier (as  the ORACLE user):

  • Copy or FTP the        appsutil.zip file to the <RDBMS ORACLE_HOME>
  • cd <RDBMS        ORACLE_HOME>
       unzip        -o appsutil.zip

 

3)

Generate the database context file

 

cd <RDBMS ORACLE_HOME>
. <CONTEXT_NAME>.env
cd <RDBMS ORACLE_HOME>/appsutil/bin
perl adbldxml.pl tier=db appsuser=<APPSuser>

cd <RDBMS ORACLE_HOME>/appsutil/bin
adconfig.sh contextfile=<CONTEXT>

 

4)

After autoconfig has been run check if the FND_NODES table has been populated

As APPS

SQL> Select node_name,support_DB from FND_NODES;

 

5)

Now run autoconfig on the ADMIN and Forms/web server nodes

 

Change the XML files …. (in this case we have to provide details about the new Linux hostname, the listener port etc )

 

<jdbc_url oa_var=”s_apps_jdbc_connect_descriptor”>jdbc:oracle:thin:@(DESCRIPTION=(LOAD_BALANCE=YES)(FAILOVER=YES)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=KENS-ORASQL-001)(PORT=1521)))(CONNECT_DATA=(SID=CLMTS10G)))</jdbc_url>

<dbhost oa_var=”s_dbhost”>kens-orasql-001</dbhost>

<domain oa_var=”s_dbdomain”>corporateict.domain</domain>

<dbport oa_var=”s_dbport” oa_type=”PORT”>1521</dbport>

 

6)

After running autoconfig, check  the FND_NODES table to ensure the right values are there for SUPPORT_CP, SUPPORT_FORMS, SUPPORT_WEB etc

 

7)

Ensure the environment variable APPLPTMP matches with the database UTL_FILE_DIR values

 

8)

From adadmin ….

select

“Recreate grants and synonyms for APPS schema” task from the Maintain Applications Database Objects menu

Compile flexfield data in AOL tables

 

9)

After the services have been started on the admin and web/forms tier connect to 11i Oracle Applications instance and run the concurrent request to create Create DQM indexes
Create DQM indexes by following these steps:

  • Log on to Oracle       Applications with the “Trading Community Manager”       responsibility
  • Click Control > Request       > Run
  • Select “Single       Request” option
  • Enter “DQM Staging       Program” name
  • Enter the following       parameters:
    • Number of Parallel Staging        Workers: 4
    • Staging Command:        CREATE_INDEXES
    • Continue Previous        Execution: NO
    • Index Creation: SERIAL
    • Click “Submit”

 

10)

On the admin node use auto patch and run the driver file which was earlier generated

dpostImp.drv

 

Review MOS notes :

Interoperability Notes Oracle EBS Release 11i with Oracle Database 10.2.0.4 [ID 1135973.1]

10g Release 2 Export/Import Process for Oracle Applications Release 11i [ID 362205.1]


Viewing all articles
Browse latest Browse all 4

Latest Images

Trending Articles





Latest Images