Upgrade Oracle EBS 12.2.8 Database to 19.3 (19c): Part 2


Install Oracle Database 19c (19.3) Binaries:

It is time now to Install the Oracle 19c Binaries. It is straight forward installation. Of course as you know unlike 12c, you need to extract the binaries first in the Oracle_Home location and then run the runInstaller from the Oracle Home itself.

Create the 19c Environment File:

Once you have the 19c Oracle Home installed, create a simple environment to set the environment easily with parameter as below. Remember “testcdb” is the CDB which we are going to create now. Though not mandatory, it will help you set the environment easily every time.

[oratest@ebn1 ~]$ cat cdb.env
export ORACLE_HOME=/u02/oratest/app/oracle/19.3
export ORACLE_SID=testcdb
export ORACLE_BASE=/u02/oratest/app
export PERL5LIB=$ORACLE_HOME/perl/lib/5.28.1:$ORACLE_HOME/perl/lib/site_perl/5.28.1
export ORA_NLS10=/u02/oratest/app/oracle/19.3/nls/data/9idata

Apply the latest 19c Database Patches:

Now since you have the 19c Binaries, you need to apply the latest 19c Database patches using: Document 1594274.1, Oracle E-Business Suite Release 12.2: Consolidated List of Patches and Technology Bug Fixes. I haven’t applied this, but you need to apply this is going to be done for your organization. You can apply the latest PSU.

Run cr9idata.pl:

Needless to say this has been a step which every DBA will remember during an upgrade since 10g. It remains the same even with a 19c Upgrade.

perl $ORACLE_HOME/nls/data/old/cr9idata.pl
Ensure you set the ORA_NLS10
export ORA_NLS10=/u02/oratest/app/oracle/19.3/nls/data/9idata

Copy appsutil.zip from Application Tier to Database and Install JRE:

[appltest@ebn1 bin]$ cd $AD_TOP/bin
[appltest@ebn1 bin]$ perl admkappsutil.pl
Starting the generation of appsutil.zip
Log file located at /u02/appltest/apps/fs1/inst/apps/TEST_ebn1/admin/log/MakeAppsUtil_10231131.log
output located at /u02/appltest/apps/fs1/inst/apps/TEST_ebn1/admin/out/appsutil.zip
Copy the appsutil.zip to DB ORACLE_HOME. Don’t run Autoconfig now.
unzip appsutil.zip
$ cd $ORACLE_HOME/appsutil
$ cp -r $ORACLE_HOME/jdk/jre .

Create CDB:

Use dbca to create the CDB. In case you are not sure about the exact character sets to use, I have given the queries to check them in the screenshot.

Run Datapatch:

In case you have applied the 19c Database Patches, run the datapatch now to apply the changes.

$ export ORACLE_SID=testcdb
$ $ORACLE_HOME/OPatch/datapatch

Create MGDSYS Schema:

[oratest@ebn1 19.3]$ sqlplus "/ as sysdba" @?/rdbms/admin/catmgd.sql

Create CDB TNS Files:

Oracle EBS Network Configuration has always been different to the standard database network configuration as you know that the TNS_ADMIN in database of EBS points to $ORACLE_HOME/network/admin/<CONTEXT_NAME>. So we need to create the network configuration for EBS specifically using txkGenCDBTnsAdmin.pl.

cd $ORACLE_HOME/appsutil
. ./txkSetCfgCDB.env dboraclehome=/u02/oratest/app/oracle/19.3
cd $ORACLE_HOME/appsutil/bin
perl txkGenCDBTnsAdmin.pl -dboraclehome=/u02/oratest/app/oracle/19.3 -cdbname=testcdb \
-cdbsid=testcdb -dbport=1521 -outdir=/u02/oratest/app/oracle/19.3/appsutil/log

Shutdown the CDB now.

Configure UTL_FILE_DIR:

Oracle EBS stores the PLSQL IO files in Database Node /usr/tmp usually in all versions of EBS starting from 11i till R12.2. For this, EBS uses UTL_FILE_DIR initialization parameter. However, from 18c, UTL_FILE_DIR initialization parameter has been desupported. Hence for 19c, Oracle for EBS have introduced new apps.v$parameter and apps.v$parameter2 views in the APPS schema that provide a supplemental UTL_FILE_DIR parameter. You need to follow the instructions given in Section 3.1.1 of :

Using UTL_FILE_DIR or Database Directories for PL/SQL File I/O in Oracle E-Business Suite Releases 12.1 and 12.2 (Doc ID 2525754.1)

Connect to 12c Database:
[oratest@ebn1 12.1.0]$ perl $ORACLE_HOME/appsutil/bin/txkCfgUtlfileDir.pl -contextfile=/u02/oratest/db/12.1.0/appsutil/TEST_ebn1.xml -oraclehome=/u02/oratest/db/12.1.0 -outdir=/tmp/txkCfgUtlfileDir -upgradedhome=/u02/oratest/app/oracle/19.3 -mode=getUtlFileDir
Enter the APPS Password:
Script Name : txkCfgUtlfileDir.pl
Script Version : 120.0.12020000.7
Started : Sun Oct 20 04:51:22 EDT 2019
Log File : /tmp/txkCfgUtlfileDir/TXK_UTIL_DIR_Sun_Oct_20_04_51_20_2019/txkCfgUtlfileDir.log
Context file: /u02/oratest/db/12.1.0/appsutil/TEST_ebn1.xml exists.
Successfully generated the below file with UTL_FILE_DIR content:
Completed : Sun Oct 20 04:51:25 EDT 2019
Successfully Completed the script

Shutdown Application and Database Listener:

Before proceeding to the Database Upgrade, Shutdown the Application Services now. Then the Database Listener of 12c Database.

Database Pre-Upgrade Steps:

Its time for the database upgrade now. If you are familiar with 18c or 19c Database Upgrade it’s the same process. DBUA is what I am going to use for the Database Upgrade. First run the Pre-Upgrade Tool for any recommendations.

Run the Pre-upgrade Tool:

Connect to the 12c Database and run the command as below:

$ORACLE_HOME/jdk/bin/java -jar /u02/oratest/app/oracle/19.3/rdbms/admin/preupgrade.jar TERMINAL TEXT

Execute the /u02/oratest/db/12.1.0/cfgtoollogs/TEST/preupgrade/preupgrade_fixups.sql which is generated. Follow any other manual steps provided such changing Initialization Parameters or Increasing SGA etc.

Most of them are warning which can be ignored. However, be careful of any show stoppers and ensure you fix them before running the DBUA. Needless to say, Ensure you take the Database Backup before you start the DBUA.

Lets see DBUA in next post.


Please enter your comment!
Please enter your name here