10.b Upgrade Oracle Database 12.1.0.3 to 19c on EBS R12.2.14

  Important Information Regarding the Upgrade to Oracle Database 19c

SYS@FBS >select name,open_mode from v$database;


NAME      OPEN_MODE
--------- --------------------
FBS      READ WRITE
 
Custom Patch Location: /labsoft/19cDB_Upgrade_EBS



I will autoextend my datafiles to avoid any tablespace issues or you can also check for sufficient space in tablespaces.

 

select file_id,file_name,autoextensible from dba_data_Files;


select file_id,file_name,autoextensible from dba_temp_Files;


select 'alter database datafile '||file_id ||' autoextend on;' from dba_data_Files;


select 'alter database tempfile '||file_id ||' autoextend on;' from dba_temp_Files;


select file_id,file_name,autoextensible from dba_data_Files;
select file_id,file_name,autoextensible from dba_temp_Files;

10.1       As per oracle Document 136697.1, hcheck.sql - Script to Check for Known Problems in Oracle8i, Oracle9i, Oracle10g, Oracle 11g and Oracle 12c, to run hcheck.sql, which looks for some known common Data Dictionary problems.



run connected as SYS schema



[oracle@fbstest 19cDB_Upgrade_EBS]$ sqlplus '/as sysdba'
 
SQL*Plus: Release 12.1.0.2.0 Production on Sat Mar 12 14:07:11 2022
 
Copyright (c) 1982, 2014, Oracle.  All rights reserved.
 
 
Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, Automatic Storage Management, OLAP, Advanced Analytics
and Real Application Testing options
 
SYS@FBS >spool hcheck_output.log
SYS@FBS >@hcheck.sql
PL/SQL procedure successfully completed.
 
Statement processed.
 
Complete output is in trace file:
/u01/app/FBS/db/tech_st/12.1.0/admin/FBS_fbstest/
diag/rdbms/fuat/FBS/trace/FBS_ora_4726_HCHECK.trc



View the spool output and trace file.



Various status seen in reports can be as below. 



CRITICAL: Is of highest risk and requires urgent fix.
FAIL:         Requires resolution on priority.
WARN:      Good to resolve.
PASS:        No problem.



My execution showed me one warning.

.- StmtAuditOnCommit           ... 1201000200 <=  *All Rel* 04/10 14:16:09 WARN
 
HCKW-0013: option# in STMT_AUDIT_OPTION_MAP(ON COMMIT REFRESH) (Doc ID
1361021.1)
-- Please run the following:
SQL> update STMT_AUDIT_OPTION_MAP set option#=234
where name ='ON COMMIT REFRESH';
[oracle@fbstest 19cDB_Upgrade_EBS]$ sqlplus '/as sysdba'


SQL*Plus: Release 12.1.0.2.0 Production on Sat Mar 12 14:12:52 2022


Copyright (c) 1982, 2014, Oracle.  All rights reserved.




Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, Automatic Storage Management, OLAP, Advanced Analytics
and Real Application Testing options


SYS@FBS >update STMT_AUDIT_OPTION_MAP set option#=234 where name ='ON COMMIT REFRESH';
  2
1 row updated.


SYS@FBS >commit;


Commit complete.

 



So I executed solution as mentioned in spool. Re-run script to make sure all is passed.



10.2       Apply required patches on EBS as required based on the version and AD/TXK delta versions. My AD and TXK version are on already Delta 12.



col ABBREVIATION for a10
set lines 1000
col NAME for a50
col CODELEVEL for a20
SELECT ABBREVIATION,NAME,codelevel FROM apps.AD_TRACKABLE_ENTITIES WHERE abbreviation in ('txk','ad');


ABBREVIATI NAME                                               CODELEVEL
---------- -------------------------------------------------- --------------------
ad         Applications DBA                                            C.12
txk        Oracle Applications Technology Stack               C.12

 



As per my environment I am required to apply below patches. Always check latest Oracle Document to see latest patches given by them.



Patch 25452805

Patch 26052406

Patch 30433124

Patch 33346385

Patch 26521736 - 19c interoperability patch for Release 12.2

Patch 31088182

Patch 31349591

Patch 31800803

Patch 28732161 - Apply on Release 12.2.6 or later versions.

 

Please review readme of all the patches.



Apply patches.(Note all patches I have kept at my common share area as mentioned above in post).Make sure patches are kept and unzipped.



For my environment below patches from above list are already applied. If they are not applied in your environment then you need to apply.



SQL> select bug_number,creation_date from ad_bugs where bug_number in (25452805,26052406,30433124
,33346385,31088182,26521736,31349591,31800803,28732161);

BUG_NUMBER		       CREATION_DATE
------------------------------ ------------------
31800803		       15-DEC-24
33346385		       15-DEC-24
31349591		       15-DEC-24
25452805		       15-DEC-24
31088182		       15-DEC-24
30433124		       15-DEC-24
26052406		       15-DEC-24

7 rows selected.

[applmgr@fbstest ~]$ . EBSapps.env run
 
  E-Business Suite Environment Information
  ----------------------------------------
  RUN File System           : /u01/app/FBS/fs2/EBSapps/appl
  PATCH File System         : /u01/app/FBS/fs1/EBSapps/appl
  Non-Editioned File System : /u01/app/FBS/fs_ne
 
 
  DB Host: fbstest.finsys.co.ke  Service/SID: FBS
 
 
  Sourcing the RUN File System ...
 
adop phase=prepare,apply,finalize,cutover,cleanup mtrestart=no patchtop=/u01/app/FBS/fs_ne/EBSapps
/patch patches=26052406,28732161

Please copy commands in notepad and then make sure they are in single line.

Once Patches applied we can see as below


[applmgr@fbsebs ~]$ adop phase=prepare,apply,finalize,cutover,cleanup mtrestart=no 
patchtop=/u01/app/FBS/fs_ne/EBSapps/patch patches=26052406,28732161

Enter the APPS password:
Enter the EBS_SYSTEM password:
Enter the WLSADMIN password:

Validating credentials.

Warning: WebLogic Admin Server is not running.

Trying to start Admin Server.

You are running adadminsrvctl.sh version 120.10.12020000.11

Starting WLS Admin Server...
Refer /u01/app/FBS/fs1/inst/apps/FBS_fbsebs/logs/appl/admin/log/adadminsrvctl.txt for details

AdminServer logs are located at /u01/app/FBS/fs1/FMW_Home/user_projects/domains/EBS_domain/servers/AdminServer/logs

adadminsrvctl.sh: exiting with status 0

adadminsrvctl.sh: check the logfile /u01/app/FBS/fs1/inst/apps/FBS_fbsebs/logs/appl/admin/log/adadminsrvctl.txt for more information ...  


Initializing.
    Run Edition context  : /u01/app/FBS/fs1/inst/apps/FBS_fbsebs/appl/admin/FBS_fbsebs.xml
    Patch edition context: /u01/app/FBS/fs2/inst/apps/FBS_fbsebs/appl/admin/FBS_fbsebs.xml
    Patch file system free space: 140.09 GB

Validating system setup.
    Node registry is valid.

Checking for existing adop sessions.
    Continuing with existing session [Session ID: 13].
    	Session Id            :   13
    	Prepare phase status  :   COMPLETED
    	Apply phase status    :   COMPLETED
    	Cutover  phase status :   NOT COMPLETED
    	Abort phase status    :   NOT COMPLETED
    	Session status        :   FAILED

===========================================================================
ADOP (C.Delta.16)
Session ID: 13
Node: fbsebs
Phase: prepare,apply,finalize,cutover,cleanup
Log: /u01/app/FBS/fs_ne/EBSapps/log/adop/13/20241220_085840/adop.log
===========================================================================
Skipping configuration validation on node: [fbsebs]

Verifying data dictionary.
The prepare phase has already been run.

Applying patch 26052406.
    [WARNING]   Skipping patch 26052406 as it has already been applied.
    [WARNING]   You can reapply a patch by adding options=forceapply to the adop command line.

Applying patch 28732161.
    [WARNING]   Skipping patch 28732161 as it has already been applied.
    [WARNING]   You can reapply a patch by adding options=forceapply to the adop command line.

Verifying data dictionary.

Running finalize phase database actions.
    Log: @ADZDSHOWLOG.sql "2024/12/20 09:00:44"
    Compiling invalid objects.

Generating log report.
    Output: /u01/app/FBS/fs_ne/EBSapps/log/adop/13/20241220_085840/finalize/fbsebs/adzdshowlog.out

Validating configuration on node: [fbsebs].
    Log: /u01/app/FBS/fs_ne/EBSapps/log/adop/13/20241220_085840/cutover/validate/fbsebs

Checking if finalize required.
    Finalize phase is not required

Submitting request for Internal Concurrent Manager shutdown.

You are running adcmctl.sh version 120.19.12020000.7

Shutting down concurrent managers for FBS ...
ORACLE Password:
Submitted request 467207 for CONCURRENT FND SHUTDOWN 


adcmctl.sh: exiting with status 0


adcmctl.sh: check the logfile /u01/app/FBS/fs1/inst/apps/FBS_fbsebs/logs/appl/admin/log/adcmctl.txt for more information ...  

    Cancelling ADZDPATCH concurrent request

Waiting for Internal Concurrent Manager to go down.

Stopping patch edition Admin Server.

You are running adadminsrvctl.sh version 120.10.12020000.11


 The AdminServer is already shutdown

AdminServer logs are located at /u01/app/FBS/fs2/FMW_Home/user_projects/domains/EBS_domain/servers/AdminServer/logs

adadminsrvctl.sh: exiting with status 2

adadminsrvctl.sh: check the logfile /u01/app/FBS/fs2/inst/apps/FBS_fbsebs/logs/appl/admin/log/adadminsrvctl.txt for more information ...  


Stopping patch edition Node Manager.

You are running adnodemgrctl.sh version 120.11.12020000.12


The Node Manager is already shutdown

NodeManager log is located at /u01/app/FBS/fs2/FMW_Home/wlserver_10.3/common/nodemanager/nmHome1

adnodemgrctl.sh: exiting with status 2

adnodemgrctl.sh: check the logfile /u01/app/FBS/fs2/inst/apps/FBS_fbsebs/logs/appl/admin/log/adnodemgrctl.txt for more information ...  


Stopping the application tier services on current node.
    Log: /u01/app/FBS/fs_ne/EBSapps/log/adop/13/20241220_085840/cutover/fbsebs

Stopping run edition Admin Server.

You are running adadminsrvctl.sh version 120.10.12020000.11

Stopping WLS Admin Server...
Refer /u01/app/FBS/fs1/inst/apps/FBS_fbsebs/logs/appl/admin/log/adadminsrvctl.txt for details

AdminServer logs are located at /u01/app/FBS/fs1/FMW_Home/user_projects/domains/EBS_domain/servers/AdminServer/logs

adadminsrvctl.sh: exiting with status 0

adadminsrvctl.sh: check the logfile /u01/app/FBS/fs1/inst/apps/FBS_fbsebs/logs/appl/admin/log/adadminsrvctl.txt for more information ...  


Stopping run edition Node Manager.

You are running adnodemgrctl.sh version 120.11.12020000.12


NodeManager log is located at /u01/app/FBS/fs1/FMW_Home/wlserver_10.3/common/nodemanager/nmHome1

adnodemgrctl.sh: exiting with status 0

adnodemgrctl.sh: check the logfile /u01/app/FBS/fs1/inst/apps/FBS_fbsebs/logs/appl/admin/log/adnodemgrctl.txt for more information ...  


Running stored cutover DDLs.
    Log: /u01/app/FBS/fs_ne/EBSapps/log/adop/13/20241220_085840/cutover/fbsebs/log/cutover.log

Loading JAR files into database.
    No JAR files found to load 

Performing database cutover.
    Log: @ADZDSHOWLOG.sql "2024/12/20 09:03:38"

 Statement handler reference is invalid.

 Session killed.
 Note that this is normal in the online patching cutover phase.
 DB-Handle Error Code: 28
 DB-Handle Error Message: ORA-00028: your session has been killed (DBD ERROR: OCIStmtExecute/Describe)
 Reconnecting to the database.
Flipping snapshots in run and patch editions.

Performing file system cutover.

Checking if file system cutover completed.

Starting application tier services.
    As 'mtrestart=no' was specified, application tier services will not be started automatically.
    The application tier services will need to be started manually.

Waiting for middle tier services to start on all available nodes.

Generating post-cutover reports.

Generating log report.
    Output: /u01/app/FBS/fs_ne/EBSapps/log/adop/13/20241220_085840/cutover/fbsebs/adzdshowlog.out

Processing cleanup actions in parallel.
    Log: /u01/app/FBS/fs_ne/EBSapps/log/adop/13/20241220_085840/cleanup/fbsebs/log/cleanup.log

Generating report of queued DDL actions.
    Output: /u01/app/FBS/fs_ne/EBSapps/log/adop/13/20241220_085840/cleanup/fbsebs/adzdallddls.out

Running cleanup in STANDARD mode.
    Log: @ADZDSHOWLOG.sql "2024/12/20 09:04:48"

Generating log report.
    Output: /u01/app/FBS/fs_ne/EBSapps/log/adop/13/20241220_085840/cleanup/fbsebs/adzdshowlog.out

The apply phase completed successfully.
The finalize phase completed successfully.
The cutover phase completed successfully.
The cleanup phase completed successfully.


adop exiting with status = 0 (Success)

Patch 31800803 Post steps:

 

10.3       On Application RUN file system

    Source the environment variables for Oracle Applications

[applmgr@fbsebs ~]$ . /u01/app/FBS/EBSapps.env run

  E-Business Suite Environment Information
  ----------------------------------------
  RUN File System           : /u01/app/FBS/fs2/EBSapps/appl
  PATCH File System         : /u01/app/FBS/fs1/EBSapps/appl
  Non-Editioned File System : /u01/app/FBS/fs_ne


  DB Host: fbsebs.finsys.co.ke  Service/SID: FBS


  Sourcing the RUN File System ...

[applmgr@fbsebs ~]$ adautocfg.sh 
Enter the APPS user password:

The log file for this session is located at: /u01/app/FBS/fs2/inst/apps/FBS_fbsebs/admin/log/12200922/adconfig.log


wlsDomainName: EBS_domain
WLS Domain Name is VALID.
AutoConfig is configuring the Applications environment...

AutoConfig will consider the custom templates if present.
	Using CONFIG_HOME location     : /u01/app/FBS/fs2/inst/apps/FBS_fbsebs
	Classpath                   : /u01/app/FBS/fs2/FMW_Home/Oracle_EBS-app1/shared-libs/ebs-appsborg/WEB-INF/lib
/ebsAppsborgManifest.jar:/u01/app/FBS/fs2/EBSapps/comn/java/classes

	Using Context file          : /u01/app/FBS/fs2/inst/apps/FBS_fbsebs/appl/admin/FBS_fbsebs.xml

Context Value Management will now update the Context file

	Updating Context file...COMPLETED

	Attempting upload of Context file and templates to database...COMPLETED

Configuring templates from all of the product tops...
	Configuring AD_TOP........COMPLETED
	Configuring FND_TOP.......COMPLETED
	Configuring ICX_TOP.......COMPLETED
	Configuring MSC_TOP.......COMPLETED
	Configuring IEO_TOP.......COMPLETED
	Configuring BIS_TOP.......COMPLETED
	Configuring CZ_TOP........COMPLETED
	Configuring SHT_TOP.......COMPLETED
	Configuring AMS_TOP.......COMPLETED
	Configuring CCT_TOP.......COMPLETED
	Configuring WSH_TOP.......COMPLETED
	Configuring CLN_TOP.......COMPLETED
	Configuring OKE_TOP.......COMPLETED
	Configuring OKL_TOP.......COMPLETED
	Configuring OKS_TOP.......COMPLETED
	Configuring CSF_TOP.......COMPLETED
	Configuring IBY_TOP.......COMPLETED
	Configuring JTF_TOP.......COMPLETED
	Configuring MWA_TOP.......COMPLETED
	Configuring CN_TOP........COMPLETED
	Configuring CSI_TOP.......COMPLETED
	Configuring WIP_TOP.......COMPLETED
	Configuring CSE_TOP.......COMPLETED
	Configuring EAM_TOP.......COMPLETED
	Configuring GMF_TOP.......COMPLETED
	Configuring PON_TOP.......COMPLETED
	Configuring FTE_TOP.......COMPLETED
	Configuring ONT_TOP.......COMPLETED
	Configuring AR_TOP........COMPLETED
	Configuring AHL_TOP.......COMPLETED
	Configuring IES_TOP.......COMPLETED
	Configuring OZF_TOP.......COMPLETED
	Configuring CSD_TOP.......COMPLETED
	Configuring IGC_TOP.......COMPLETED

AutoConfig completed successfully.
[applmgr@fbsebs ~]$ $AD_TOP/bin/admkappsutil.pl
Starting the generation of appsutil.zip
Log file located at /u01/app/FBS/fs2/inst/apps/FBS_fbsebs/admin/log/MakeAppsUtil_12200927.log
output located at /u01/app/FBS/fs2/inst/apps/FBS_fbsebs/admin/out/appsutil.zip
MakeAppsUtil completed successfully.

10.4         On the Database Tier (as the ORACLE user):

 

   Source the environment variables for RDBMS ORACLE_HOME


     cd <RDBMS ORACLE_HOME>
     . <RDBMS ORACLE_HOME>/<CONTEXT_NAME>.env


    Copy or FTP the appsutil.zip file to the <RDBMS ORACLE_HOME>

    Uncompress appsutil.zip under the <RDBMS ORACLE_HOME>

[oracle@fbsebs 12.1.0]$ scp -r /u01/app/FBS/fs2/inst/apps/FBS_fbsebs/admin/out/appsutil.zip .
[oracle@fbsebs 12.1.0]$ . FBS_fbsebs.env 
[oracle@fbsebs 12.1.0]$ unzip -o appsutil.zip
Archive:  appsutil.zip
  inflating: appsutil/template/addbtmpl.drv  
  inflating: appsutil/template/addbactmpl.drv  
  inflating: appsutil/template/addbcltmpl.drv  
  inflating: appsutil/template/txkEBSWrapper.pl  
  inflating: appsutil/template/ad8idbnt.env  
  inflating: appsutil/template/addbprf.cmd  
  inflating: appsutil/template/addbctl.cmd  
  inflating: appsutil/template/addlnctl.cmd  
  inflating: appsutil/template/adlsnodes_nt.cmd  
  inflating: appsutil/template/adsvdb.cmd  
  inflating: appsutil/template/adsvdcnv.cmd  
  inflating: appsutil/template/adsvdlsn.cmd  
  inflating: appsutil/template/adupdlib_nt.sql  
  inflating: appsutil/template/adora8iinf.cmd  
  inflating: appsutil/template/adora10g_stub.inf  
  inflating: appsutil/template/addbsynhnm.cmd  
  inflating: appsutil/template/adcrobj.cmd  
  inflating: appsutil/template/afinit_NT_ALL.ora  
  inflating: appsutil/template/afdbprf.cmd  
  inflating: appsutil/template/addbprf.sh  
  inflating: appsutil/template/addbctl.sh  
  inflating: appsutil/template/adlsnodes_ux.sh  
  inflating: appsutil/template/adsvdb.sh  
  inflating: appsutil/template/adsvdcnv.sh  
  inflating: appsutil/template/adsvdlsn.sh  
  inflating: appsutil/template/adupdlib_ux.sql  
  inflating: appsutil/template/addlnctl.sh  
  inflating: appsutil/template/adcrobj.sh  
  inflating: appsutil/template/txkCreateEBSDirObj.sh  
  inflating: appsutil/template/txkCreateEBSDirObj.cmd  
  inflating: appsutil/template/addbperms.sh  
  inflating: appsutil/template/txkConfigDbOcm.pl  
  inflating: appsutil/template/afmkinit.sh  
  inflating: appsutil/template/afdbprf.sh  
  inflating: appsutil/template/addbprf.sql  
  inflating: appsutil/template/addbccnv.sql  
  inflating: appsutil/template/adstopdb.sql  
  inflating: appsutil/template/adstrtdb.sql  
  inflating: appsutil/template/adcrobj.sql  
  inflating: appsutil/template/txkCreateEBSDirObj.sql  
  inflating: appsutil/template/adchknls.pl  
  inflating: appsutil/template/afdbprf.sql  
  inflating: appsutil/template/txkcreateACL.cmd  
  inflating: appsutil/template/txkcreateACL.sh  
  inflating: appsutil/template/txkcreateACL.sql  
  inflating: appsutil/template/txkcreateACL_db122.sql  
  inflating: appsutil/template/txkcreateACL_db19.sql  
  inflating: appsutil/template/afifilecbo.ora  
  inflating: appsutil/template/afinit_db101.ora  
  inflating: appsutil/template/afinit_db102.ora  
  inflating: appsutil/template/afinit_db111.ora  
  inflating: appsutil/template/afinit_db112.ora  
  inflating: appsutil/template/afinit_db121.ora  
  inflating: appsutil/template/afinit_db122.ora  
  inflating: appsutil/template/afinit_db19.ora  
  inflating: appsutil/template/afinit_db101RAC.ora  
  inflating: appsutil/template/afinit_db102RAC.ora  
  inflating: appsutil/template/afinit_db111RAC.ora  
  inflating: appsutil/template/afinit_db112RAC.ora  
  inflating: appsutil/template/afinit_db121RAC.ora  
  inflating: appsutil/template/afinit_db122RAC.ora  
  inflating: appsutil/template/afinit_db19RAC.ora  
  inflating: appsutil/template/config_sol.s  
  inflating: appsutil/template/config_sol_64.s  
  inflating: appsutil/template/config_aix.s  
  inflating: appsutil/template/config_aix_64.s  
  inflating: appsutil/template/config_ux.tmp  
  inflating: appsutil/template/config_ux_db121.tmp  
  inflating: appsutil/template/ad8idbux.env  
  inflating: appsutil/template/ad8ilsnr.ora  
  inflating: appsutil/template/adlsnr10RAC.ora  
  inflating: appsutil/template/ons_config_db.tmp  
  inflating: appsutil/template/ad8isqlnet.ora  
  inflating: appsutil/template/ad8itns.ora  
  inflating: appsutil/template/txkDBSecUserAuditActionBanner_pl.tmp  
  inflating: appsutil/template/adcdbctl_sh.tmp  
  inflating: appsutil/template/adpdbctl_sh.tmp  
  inflating: appsutil/template/adcdbctl_nt.tmp  
  inflating: appsutil/template/adpdbctl_nt.tmp  
  inflating: appsutil/template/adstopcdb_sql.tmp  
  inflating: appsutil/template/adstoppdb_sql.tmp  
  inflating: appsutil/template/adstrtcdb_sql.tmp  
  inflating: appsutil/template/adstrtpdb_sql.tmp  
  inflating: appsutil/template/adora19cinf.cmd  
  inflating: appsutil/template/adora19c_stub.inf  
  inflating: appsutil/template/adora23cinf.cmd  
  inflating: appsutil/template/adora23c_stub.inf  
  inflating: appsutil/template/adsvcdlsn.cmd  
  inflating: appsutil/template/adautocfg_nt.cmd  
  inflating: appsutil/template/adautocfg_ux.sh  
  inflating: appsutil/template/adcvmdb.xml  
  inflating: appsutil/template/adxdbctx.tmp  
  inflating: appsutil/template/adxdbinf.tmp  
  inflating: appsutil/template/adexecsql.pl  
  inflating: appsutil/template/adcrdb.cmd  
  inflating: appsutil/template/adcrsvc.cmd  
  inflating: appsutil/template/adcrdbrdlg.cmd  
  inflating: appsutil/template/afmkinit.cmd  
  inflating: appsutil/template/afmkinit_inst.cmd  
  inflating: appsutil/template/adcrdb.sh  
  inflating: appsutil/template/adcrdbrdlg.sh  
  inflating: appsutil/template/adlnkoh.sh  
  inflating: appsutil/template/addbupdgsm.sql  
  inflating: appsutil/template/adclobconv.sql  
  inflating: appsutil/template/adclobtmp.sql  
  inflating: appsutil/template/adclobcln.sql  
  inflating: appsutil/template/adlicnse.sql  
  inflating: appsutil/template/adpreclone.pl  
  inflating: appsutil/template/adcfgclone.pl  
  inflating: appsutil/template/adcldbapply.sql  
  inflating: appsutil/template/adcldbclean.sql  
  inflating: appsutil/template/adcldbgenrest.sql  
  inflating: appsutil/template/adcldbstage.sql  
  inflating: appsutil/template/adouidb.pl  
  inflating: appsutil/template/adouitools.pl  
  inflating: appsutil/template/adouiweboh.pl  
  inflating: appsutil/template/adpredb.drv  
  inflating: appsutil/template/adpretools.drv  
  inflating: appsutil/template/adpreweboh.drv  
  inflating: appsutil/template/adregdb.drv  
  inflating: appsutil/template/adregtools.drv  
  inflating: appsutil/template/adregweboh.drv  
  inflating: appsutil/template/adcmclean.sql  
  inflating: appsutil/template/adcctclean.sql  
  inflating: appsutil/template/db19c_install_rsp.tmp  
  inflating: appsutil/template/db23c_install_rsp.tmp  
  inflating: appsutil/template/adoradbcinf.cmd  
  inflating: appsutil/template/adora8i_stub.inf  
  inflating: appsutil/template/adora8i_conf.inf  
  inflating: appsutil/template/adora9i_stub.inf  
  inflating: appsutil/template/adora9i_conf.inf  
  inflating: appsutil/template/adcdblnctl_sh.tmp  
  inflating: appsutil/template/adcdblnctl_nt.tmp  
  inflating: appsutil/template/adcdb_ux_env.tmp  
  inflating: appsutil/template/adcdb_nt_cmd.tmp  
  inflating: appsutil/template/listener_ora_cdb_db121_rac.tmp  
  inflating: appsutil/template/listener_ora_cdb_db121.tmp  
  inflating: appsutil/template/listener_ora_cdb_db19.tmp  
  inflating: appsutil/template/listener_ora_cdb_db19_rac.tmp  
  inflating: appsutil/template/listener_ora_cdb_db23.tmp  
  inflating: appsutil/template/listener_ora_cdb_db23_rac.tmp  
  inflating: appsutil/template/tnsnames_ora_cdb_db121.tmp  
  inflating: appsutil/template/init_ora_cdb_db121.tmp  
  inflating: appsutil/template/init_ora_cdb_db122.tmp  
  inflating: appsutil/template/init_ora_cdb_db19.tmp  
  inflating: appsutil/template/txk_create_cdb_db_sql.tmp  
  inflating: appsutil/template/sqlnet_ora_cdb_db122.tmp  
  inflating: appsutil/template/sqlnet_ora_cdb_db19.tmp  
  inflating: appsutil/template/sqlnet_ora_cdb_db19_nt.tmp  
  inflating: appsutil/template/sqlnet_ora_cdb_db23.tmp  
  inflating: appsutil/perl/TXK/ARGS.pm  
  inflating: appsutil/perl/TXK/AutoBuild.pm  
  inflating: appsutil/perl/TXK/AutoConfig.pm  
  inflating: appsutil/perl/TXK/Common.pm  
  inflating: appsutil/perl/TXK/Error.pm  
  inflating: appsutil/perl/TXK/FileSys.pm  
  inflating: appsutil/perl/TXK/IO.pm  
  inflating: appsutil/perl/TXK/Inventory.pm  
  inflating: appsutil/perl/TXK/Log.pm  
  inflating: appsutil/perl/TXK/OSD.pm  
  inflating: appsutil/perl/TXK/Process.pm  
  inflating: appsutil/perl/TXK/Reports.pm  
  inflating: appsutil/perl/TXK/Restart.pm  
  inflating: appsutil/perl/TXK/RunScript.pm  
  inflating: appsutil/perl/TXK/Runtime.pm  
  inflating: appsutil/perl/TXK/SQLPLUS.pm  
  inflating: appsutil/perl/TXK/Script.pm  
  inflating: appsutil/perl/TXK/Techstack.pm  
  inflating: appsutil/perl/TXK/TechstackDB.pm  
  inflating: appsutil/perl/TXK/Util.pm  
  inflating: appsutil/perl/TXK/Validate.pm  
  inflating: appsutil/perl/TXK/XML.pm  
  inflating: appsutil/perl/TXK/HealthCheckReport.pm  
  inflating: appsutil/perl/ADX/util/Java.pm  
  inflating: appsutil/perl/ADX/util/Sysutil.pm  
  inflating: appsutil/bin/TXKScript.pl  
  inflating: appsutil/bin/txkrun.pl  
  inflating: appsutil/bin/txkInventory.pl  
  inflating: appsutil/bin/txkSyncDBConfig.pl  
  inflating: appsutil/bin/txkGenCtxInfRep.pl  
  inflating: appsutil/bin/txkHealthCheckReport.pl  
  inflating: appsutil/bin/adbldxml.pl  
  inflating: appsutil/bin/adchkcfg.cmd  
  inflating: appsutil/bin/adchkcfg.sh  
  inflating: appsutil/bin/adconfig.cmd  
  inflating: appsutil/bin/adconfig.sh  
  inflating: appsutil/bin/adconfig.pl  
  inflating: appsutil/bin/adcustomizer.cmd  
  inflating: appsutil/bin/adcustomizer.sh  
  inflating: appsutil/bin/adcvm.cmd  
  inflating: appsutil/bin/adcvm.sh   
  inflating: appsutil/bin/addlnctl.pl  
  inflating: appsutil/bin/adgentns.pl  
  inflating: appsutil/bin/adtmplreport.cmd  
  inflating: appsutil/bin/adtmplreport.sh  
  inflating: appsutil/bin/adgendisks.pl  
  inflating: appsutil/bin/txkSetADOPPatchSrvName.pl  
  inflating: appsutil/bin/txkSetADOPPatchSrvName.sh  
  inflating: appsutil/bin/txkSetADOPPatchSrvName.cmd  
  inflating: appsutil/bin/txkCfgUtlfileDir.pl  
  inflating: appsutil/bin/txkCfgUtlfileDir.sh  
  inflating: appsutil/bin/txkCfgUtlfileDir.cmd  
  inflating: appsutil/bin/txkCreateEBSPDBService.pl  
  inflating: appsutil/bin/txkCreateEBSPDBService.sh  
  inflating: appsutil/bin/txkCreateEBSPDBService.cmd  
  inflating: appsutil/bin/txkSetScanName.pl  
  inflating: appsutil/bin/txkSavePDBState.pl  
  inflating: appsutil/bin/txkSetUnicodeCharSet.pl  
  inflating: appsutil/bin/adclone.sh  
  inflating: appsutil/bin/adclone.pl  
  inflating: appsutil/bin/adchkutl.sh  
  inflating: appsutil/bin/adclonectx.pl  
  inflating: appsutil/bin/adxerr.pl  
  inflating: appsutil/bin/txkCreatePDB.pl  
  inflating: appsutil/bin/txkPostPDBCreationTasks.pl  
  inflating: appsutil/bin/txkPrePDBCreationTasks.pl  
  inflating: appsutil/bin/txkOnPremPrePDBCreationTasks.pl  
  inflating: appsutil/bin/txkCfgCDB.pl  
  inflating: appsutil/bin/txkCfgPDBRACNode.pl  
  inflating: appsutil/bin/txkChkPDBCompatability.pl  
  inflating: appsutil/bin/txkGenDBInitParam.pl  
  inflating: appsutil/bin/txkGenCDBTnsAdmin.pl  
  inflating: appsutil/bin/txkGenPDBTnsAdmin.pl  
  inflating: appsutil/bin/txkPDBCloneTasks.pl  
  inflating: appsutil/html/txkValidate.xsl  
  inflating: appsutil/html/txkMessages.xml  
  inflating: appsutil/html/txkInventory.xml  
  inflating: appsutil/html/txkDiagnostics.xml  
  inflating: appsutil/html/txkValObjMap.xml  
  inflating: appsutil/html/txkHealthCheckReport.xml  
  inflating: appsutil/html/txkCtxInfReport.xsl  
  inflating: appsutil/html/txkCtxInfTextReport.xsl  
  inflating: appsutil/html/autoconfig_profile.xsl  
  inflating: appsutil/html/cabo/images/swan/t.gif  
 extracting: appsutil/html/cabo/images/swan/topTabR.gif  
  inflating: appsutil/html/cabo/images/swan/topTabL.gif  
  inflating: appsutil/html/cabo/images/swan/topTabDDjoint.gif  
  inflating: appsutil/html/cabo/images/swan/topTabDAjoint.gif  
  inflating: appsutil/html/cabo/images/swan/topTabBg.gif  
  inflating: appsutil/html/cabo/images/swan/topTabADjoint.gif  
  inflating: appsutil/html/cabo/images/swan/topDimTabR.gif  
  inflating: appsutil/html/cabo/images/swan/topDimTabL.gif  
  inflating: appsutil/html/cabo/images/swan/topDimTabBg.gif  
  inflating: appsutil/html/cabo/images/swan/navBarUnderTopTabsBg.gif  
  inflating: appsutil/html/cabo/images/swan/headerBg.jpg  
  inflating: appsutil/html/cabo/images/swan/footerBg.gif  
  inflating: appsutil/html/ProcessCloneDef.xsl  
  inflating: appsutil/sql/adgrants.sql  
  inflating: appsutil/java/xmlparserv2.jar  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/ServiceControl$Service.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/oam/FsCtxFileException.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/oam/InDbCtxFile.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/oam/InDbCtxFileException.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/oam/OAMUtilConsts.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/oam/CtxSynchronizer.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/oam/CtxSynchronizerException.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/oam/CustomizationRecord.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/oam/FsCtxFile.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/ServiceControl$ServiceGroup.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/ServiceControl.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/ACThreadPoolExecutor$1.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/ACThreadPoolExecutor.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/ACThreadPoolExecutorException.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/AppltopDrivers.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/AutoConfigProcess.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/AutoConfigSynchronizer$1.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/AutoConfigSynchronizer.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/AutoConfigSynchronizerException.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/ConfigInfo.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/ExecuteProcess.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/ExecuteService.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/HtmlDiffReport$HtmlColorDiff.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/HtmlDiffReport.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/InstantiateDriver$InstantiateDriverEntry.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/InstantiateDriver.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/InstantiateFile$ListSorter.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/InstantiateFile.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/InstantiateProcess.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/ListDbUpdates$DbUpdate.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/ListDbUpdates.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/ListProfiles$StoreProfileData.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/ListProfiles.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/PerformanceProfileReport$1.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/PerformanceProfileReport$Builder.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/PerformanceProfileReport.class  
  inflating: appsutil/java/oracle/apps/ad/autoconfig/RestoreProfile.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/FMWOracleHomePreReqCheck.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/MakeOHCloner.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/OPWrapper.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/OracleHomeCloner$AbsorbPrintStream.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/OracleHomeCloner.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/ProgressIndicator.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/RMANDatabase.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/StageCopyApplTop.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/StageCopyAppsTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/StageCopyDBTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/StageCopyDatabase.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/StageCustomApplTop.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/StageCustomAppsTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/StageCustomDBTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/StageCustomDatabase.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/StageLinkApplTop.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/StageLinkAppsTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/StageLinkDBTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/StageLinkDatabase.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/TSComnTopLister.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/WLSDomainCleanupUtil.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/ZipApplTop.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/ZipAppsTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/ZipDBTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/ZipDatabase.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/ZipHolder.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/ZipTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/BinPacker$DirectoryInfo.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/BinPacker.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/CloneCleanser.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/CloneProcessor.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/CloneUtil$1.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/CloneUtil.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/CopyExecutor.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/CreateCloningStage.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/DataSourceXMLParser$1.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/DataSourceXMLParser.class  
  inflating: appsutil/java/oracle/apps/ad/clone/util/DirectoryCopier.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/ADXMsgLog.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/ClnActivity.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/ClnConstants.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/ClnException.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/ClnNodeStatus.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/ClnStatusDetails.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/ClnTask.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/ClnTaskList.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/ClnUtil.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/ClnValidationException.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/CloneDefParser.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/CloneDefParserException.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/CloneDefResultException.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/CloneDefXmlException.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/CloneDefXslException.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/CloneDefXsltException.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/CloneNotifier.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/CloneNotifierException.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/CtxFileException.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/InvalidArgValException.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/OAMClone.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/OAMCloneConsts.class  
  inflating: appsutil/java/oracle/apps/ad/clone/oam/OAMCloneException.class  
  inflating: appsutil/java/oracle/apps/ad/clone/syncup/FSCloneSyncModeMetadataCreator.class  
  inflating: appsutil/java/oracle/apps/ad/clone/syncup/FSCloneSyncModeMetadataCreator$Builder.class  
  inflating: appsutil/java/oracle/apps/ad/clone/syncup/FSCloneSyncModeMetadataCreator$1.class  
  inflating: appsutil/java/oracle/apps/ad/clone/syncup/FSCloneSyncModeMetadata.class  
  inflating: appsutil/java/oracle/apps/ad/clone/syncup/FSCloneSyncModeMetadata$SYNC_MODE.class  
  inflating: appsutil/java/oracle/apps/ad/clone/syncup/DirectorySyncup.class  
  inflating: appsutil/java/oracle/apps/ad/clone/syncup/DirectorySyncup$Builder.class  
  inflating: appsutil/java/oracle/apps/ad/clone/syncup/DirectorySyncup$1.class  
  inflating: appsutil/java/oracle/apps/ad/clone/StagewlsTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/ApplTopCopier.class  
  inflating: appsutil/java/oracle/apps/ad/clone/ApplyApplTop.class  
  inflating: appsutil/java/oracle/apps/ad/clone/ApplyAppsTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/ApplyAppsTier.class  
  inflating: appsutil/java/oracle/apps/ad/clone/ApplyDBTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/ApplyDBTier.class  
  inflating: appsutil/java/oracle/apps/ad/clone/ApplyDatabase.class  
  inflating: appsutil/java/oracle/apps/ad/clone/ApplyRmanDatabase.class  
  inflating: appsutil/java/oracle/apps/ad/clone/ApplyfmwTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/ApplyohsTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/ApplywlsTechStack$1.class  
  inflating: appsutil/java/oracle/apps/ad/clone/ApplywlsTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/CloneApplTop.class  
  inflating: appsutil/java/oracle/apps/ad/clone/CloneAppsTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/CloneAppsTier.class  
  inflating: appsutil/java/oracle/apps/ad/clone/CloneDBTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/CloneDBTier.class  
  inflating: appsutil/java/oracle/apps/ad/clone/CloneDatabase.class  
  inflating: appsutil/java/oracle/apps/ad/clone/CloneTaskTracker$1.class  
  inflating: appsutil/java/oracle/apps/ad/clone/CloneTaskTracker.class  
  inflating: appsutil/java/oracle/apps/ad/clone/DataSourcePropVO.class  
  inflating: appsutil/java/oracle/apps/ad/clone/FSCloneApplyAppsTier$1.class  
  inflating: appsutil/java/oracle/apps/ad/clone/FSCloneApplyAppsTier.class  
  inflating: appsutil/java/oracle/apps/ad/clone/FSCloneStageAppsTier.class  
  inflating: appsutil/java/oracle/apps/ad/clone/MergeApplTop$FileEntry.class  
  inflating: appsutil/java/oracle/apps/ad/clone/MergeApplTop.class  
  inflating: appsutil/java/oracle/apps/ad/clone/RCloneAbstract.class  
  inflating: appsutil/java/oracle/apps/ad/clone/RCloneApplyAppstier.class  
  inflating: appsutil/java/oracle/apps/ad/clone/RCloneSFSAddNode$ProcessPatchAddNode.class  
  inflating: appsutil/java/oracle/apps/ad/clone/RCloneSFSAddNode$ProcessRunAddNode.class  
  inflating: appsutil/java/oracle/apps/ad/clone/RCloneSFSAddNode.class  
  inflating: appsutil/java/oracle/apps/ad/clone/StageApplTop.class  
  inflating: appsutil/java/oracle/apps/ad/clone/StageAppsTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/StageAppsTier.class  
  inflating: appsutil/java/oracle/apps/ad/clone/StageDBTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/StageDBTier.class  
  inflating: appsutil/java/oracle/apps/ad/clone/StageDatabase.class  
  inflating: appsutil/java/oracle/apps/ad/clone/StagefmwTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/StageohsTechStack.class  
  inflating: appsutil/java/oracle/apps/ad/clone/constants/CloneConstants.class  
  inflating: appsutil/java/oracle/apps/ad/context/CloneContext$ContextUtil.class  
  inflating: appsutil/java/oracle/apps/ad/context/CloneContext$RACNode.class  
  inflating: appsutil/java/oracle/apps/ad/context/CloneContext.class  
  inflating: appsutil/java/oracle/apps/ad/context/Config2Context.class  
  inflating: appsutil/java/oracle/apps/ad/context/ConfigFile.class  
  inflating: appsutil/java/oracle/apps/ad/context/Context2Context.class  
  inflating: appsutil/java/oracle/apps/ad/context/ContextProcess.class  
  inflating: appsutil/java/oracle/apps/ad/context/ContextSelfHeal.class  
  inflating: appsutil/java/oracle/apps/ad/context/CreateContext.class  
  inflating: appsutil/java/oracle/apps/ad/context/CloneContext$DBHomeProfile.class  
  inflating: appsutil/java/oracle/apps/ad/context/CloneContext$RACContext.class  
  inflating: appsutil/java/oracle/apps/ad/context/CtxValueMgt.class  
  inflating: appsutil/java/oracle/apps/ad/context/DependencyModeller$ContextTemplateParser.class  
  inflating: appsutil/java/oracle/apps/ad/context/DependencyModeller$Node.class  
  inflating: appsutil/java/oracle/apps/ad/context/DependencyModeller.class  
  inflating: appsutil/java/oracle/apps/ad/context/GenerateAppsContext.class  
  inflating: appsutil/java/oracle/apps/ad/context/GenerateContext.class  
  inflating: appsutil/java/oracle/apps/ad/context/NameValue.class  
  inflating: appsutil/java/oracle/apps/ad/context/AppsContext.class  
  inflating: appsutil/java/oracle/apps/ad/context/NotificationContext.class  
  inflating: appsutil/java/oracle/apps/ad/context/OAVars.class  
  inflating: appsutil/java/oracle/apps/ad/context/OAVarsDesc.class  
  inflating: appsutil/java/oracle/apps/ad/context/ParseDefxmlFile$AppsDefXMLFile.class  
  inflating: appsutil/java/oracle/apps/ad/context/ParseDefxmlFile$OAVarDefXMLFile.class  
  inflating: appsutil/java/oracle/apps/ad/context/ParseDefxmlFile.class  
  inflating: appsutil/java/oracle/apps/ad/context/RetrieveContext$CtxtFile.class  
  inflating: appsutil/java/oracle/apps/ad/context/RetrieveContext.class  
  inflating: appsutil/java/oracle/apps/ad/context/ScriptEntry.class  
  inflating: appsutil/java/oracle/apps/ad/context/AnalyzeContext.class  
  inflating: appsutil/java/oracle/apps/ad/context/ScriptsLog.class  
  inflating: appsutil/java/oracle/apps/ad/context/StoreDataOfFile.class  
  inflating: appsutil/java/oracle/apps/ad/context/UpdateContext.class  
  inflating: appsutil/java/oracle/apps/ad/context/WLACMapEntry.class  
  inflating: appsutil/java/oracle/apps/ad/revision/AppsRevision.class  
  inflating: appsutil/java/oracle/apps/ad/revision/AppsRevisionFinder.class  
  inflating: appsutil/java/oracle/apps/ad/revision/AppsRevisionParser.class  
  inflating: appsutil/java/oracle/apps/ad/revision/Ident.class  
  inflating: appsutil/java/oracle/apps/ad/revision/IdentStringFinder.class  
  inflating: appsutil/java/oracle/apps/ad/revision/Revision.class  
  inflating: appsutil/java/oracle/apps/ad/revision/RevisionFinder.class  
  inflating: appsutil/java/oracle/apps/ad/revision/RevisionParser.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/RegisterWLSListeners$AddNotificationListener.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/RegisterWLSListeners.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/SyncContext$ParamAnnotation.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/SyncContext.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/SyncProdTops.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/TNSAlias.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/TNSAliasAddress.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/TNSAliasDescription.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/UpdateEBSDeploymentPlans.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ValidateIANACset.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ValidateTechInstall.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/VersionConflictListGenerator.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/WorkBench.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ADGenTopFile$ProdInfo.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ADGenTopFile.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ADOPCustomSyncUp$CustomCommandUtil.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ADOPCustomSyncUp.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ATNameHandler.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ATTemplateReport.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ApplCSFLogManager.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ApplicationVersionManager.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/CVMHelper.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ConfigChangeDetector.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/Customizer.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/DataModelHandler.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/EBSDomainManager.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/EBSNodesRegisterADB.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/EBSProvisioner$ExecuteThreadedNMStart.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/EBSProvisioner$ParamAnnotation.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/EBSProvisioner$WLSTStatus.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/EBSProvisioner.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/FileSysDBCtxMerge.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/InitOra.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/JaznCredentialManager.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/NetServiceHandler.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/RACAutoConfig$ClusterCmdHolder.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/RACAutoConfig.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/RegisterNodePreReq$1.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/RegisterNodePreReq$CONN_FILTER_CONTROL_OPTIONS.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/RegisterNodePreReq$ParamAnnotation.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/RegisterNodePreReq$WLSTStatus.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/RegisterNodePreReq.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/wls/filter/EBSConnectionFilterImpl.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/wls/filter/EBSConnectionFilterRulesValidator.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/wls/filter/EBSFastFilterEntry.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/wls/filter/EBSFilterEntry.class  
  inflating: appsutil/java/oracle/apps/ad/tools/configuration/wls/filter/EBSSlowFilterEntry.class  
  inflating: appsutil/java/oracle/apps/ad/tools/AdCreateCtlFile.class  
  inflating: appsutil/java/oracle/apps/ad/tools/MakeAppsUtil.class  
  inflating: appsutil/java/oracle/apps/ad/tools/MakeCDArea.class  
  inflating: appsutil/java/oracle/apps/ad/tools/ADRunner.class  
  inflating: appsutil/java/oracle/apps/ad/tools/AdCreateCtlFileRman.class  
  inflating: appsutil/java/oracle/apps/ad/tools/CDLocator.class  
  inflating: appsutil/java/oracle/apps/ad/tools/CDZipBlock.class  
  inflating: appsutil/java/oracle/apps/ad/tools/CDZipEntry.class  
  inflating: appsutil/java/oracle/apps/ad/tools/DirectoryParser.class  
  inflating: appsutil/java/oracle/apps/ad/tools/GenDBDriver.class  
  inflating: appsutil/java/oracle/apps/ad/tools/ADFile.class  
  inflating: appsutil/java/oracle/apps/ad/tools/ADFileList.class  
  inflating: appsutil/java/oracle/apps/ad/tools/ADFileListUtils.class  
  inflating: appsutil/java/oracle/apps/ad/tools/ADProduct.class  
  inflating: appsutil/java/oracle/apps/ad/util/zip/ZipEntry.class  
  inflating: appsutil/java/oracle/apps/ad/util/zip/ZipFile.class  
  inflating: appsutil/java/oracle/apps/ad/util/zip/ZipFileInputStream.class  
  inflating: appsutil/java/oracle/apps/ad/util/zip/ZipOutputStream.class  
  inflating: appsutil/java/oracle/apps/ad/util/HtmlUtils.class  
  inflating: appsutil/java/oracle/apps/ad/util/IniFile$IniPair.class  
  inflating: appsutil/java/oracle/apps/ad/util/IniFile$IniSection.class  
  inflating: appsutil/java/oracle/apps/ad/util/IniFile.class  
  inflating: appsutil/java/oracle/apps/ad/util/LogFile.class  
  inflating: appsutil/java/oracle/apps/ad/util/MessageHandler.class  
  inflating: appsutil/java/oracle/apps/ad/util/MessageParser$OAVarParser.class  
  inflating: appsutil/java/oracle/apps/ad/util/MessageParser.class  
  inflating: appsutil/java/oracle/apps/ad/util/MessageResourceBundle.class  
  inflating: appsutil/java/oracle/apps/ad/util/OHSUtil.class  
  inflating: appsutil/java/oracle/apps/ad/util/OSPatchCheck.class  
  inflating: appsutil/java/oracle/apps/ad/util/ObfuscatePassword.class  
  inflating: appsutil/java/oracle/apps/ad/util/OptionParser.class  
  inflating: appsutil/java/oracle/apps/ad/util/PortPool$Port.class  
  inflating: appsutil/java/oracle/apps/ad/util/PortPool.class  
  inflating: appsutil/java/oracle/apps/ad/util/PrepZip.class  
  inflating: appsutil/java/oracle/apps/ad/util/ProgramArgumentEnumeration.class  
  inflating: appsutil/java/oracle/apps/ad/util/ProgramArgumentEnumeration_Test.class  
  inflating: appsutil/java/oracle/apps/ad/util/ProvisionerUtil.class  
  inflating: appsutil/java/oracle/apps/ad/util/RACUtil.class  
  inflating: appsutil/java/oracle/apps/ad/util/RecordSet.class  
  inflating: appsutil/java/oracle/apps/ad/util/RemoteProcessCtrl.class  
  inflating: appsutil/java/oracle/apps/ad/util/RemoteProcessExecutor.class  
  inflating: appsutil/java/oracle/apps/ad/util/RemoteProcessResult.class  
  inflating: appsutil/java/oracle/apps/ad/util/SortList.class  
  inflating: appsutil/java/oracle/apps/ad/util/StreamTokenizeUtils.class  
  inflating: appsutil/java/oracle/apps/ad/util/SystemCheck.class  
  inflating: appsutil/java/oracle/apps/ad/util/TNSParser.class  
  inflating: appsutil/java/oracle/apps/ad/util/TimedProcess$AsyncStreamReader.class  
  inflating: appsutil/java/oracle/apps/ad/util/TimedProcess$TimedProcessProcess.class  
  inflating: appsutil/java/oracle/apps/ad/util/TimedProcess$TimedProcessTimer.class  
  inflating: appsutil/java/oracle/apps/ad/util/TimedProcess.class  
  inflating: appsutil/java/oracle/apps/ad/util/UpdateEBSDomain$ParamAnnotation.class  
  inflating: appsutil/java/oracle/apps/ad/util/UpdateEBSDomain.class  
  inflating: appsutil/java/oracle/apps/ad/util/VersionCompare.class  
  inflating: appsutil/java/oracle/apps/ad/util/WLSACMapUtil.class  
  inflating: appsutil/java/oracle/apps/ad/util/WLSListener.class  
  inflating: appsutil/java/oracle/apps/ad/util/WLUtil.class  
  inflating: appsutil/java/oracle/apps/ad/util/ACUtil.class  
  inflating: appsutil/java/oracle/apps/ad/util/ADMessageList.class  
  inflating: appsutil/java/oracle/apps/ad/util/ADOPValidations$ETCHostsElements.class  
  inflating: appsutil/java/oracle/apps/ad/util/ADOPValidations$ParamAnnotation.class  
  inflating: appsutil/java/oracle/apps/ad/util/ADOPValidations.class  
  inflating: appsutil/java/oracle/apps/ad/util/AppStartupPropertyListener.class  
  inflating: appsutil/java/oracle/apps/ad/util/ArrayEnumeration.class  
  inflating: appsutil/java/oracle/apps/ad/util/ContextFileManager$UpdateContextFile.class  
  inflating: appsutil/java/oracle/apps/ad/util/ContextFileManager.class  
  inflating: appsutil/java/oracle/apps/ad/util/ContextUtil$1.class  
  inflating: appsutil/java/oracle/apps/ad/util/ContextUtil$ContextVarInfo.class  
  inflating: appsutil/java/oracle/apps/ad/util/ContextUtil$ProdTop.class  
  inflating: appsutil/java/oracle/apps/ad/util/ContextUtil$TemplateInfo.class  
  inflating: appsutil/java/oracle/apps/ad/util/ContextUtil.class  
  inflating: appsutil/java/oracle/apps/ad/util/CustomProductEntryManager.class  
  inflating: appsutil/java/oracle/apps/ad/util/DBUtil.class  
  inflating: appsutil/java/oracle/apps/ad/util/FileCopy.class  
  inflating: appsutil/java/oracle/apps/ad/util/FileDiff$DiffColors.class  
  inflating: appsutil/java/oracle/apps/ad/util/FileDiff$DiffFile.class  
  inflating: appsutil/java/oracle/apps/ad/util/FileDiff$DiffLine.class  
  inflating: appsutil/java/oracle/apps/ad/util/FileDiff.class  
  inflating: appsutil/java/oracle/apps/ad/util/FileUnzip.class  
  inflating: appsutil/java/oracle/apps/ad/util/FileZip.class  
  inflating: appsutil/java/oracle/apps/fnd/txk/healthcheck/xmlrep/HealthCheckXmlParser$1.class  
  inflating: appsutil/java/oracle/apps/fnd/txk/healthcheck/xmlrep/HealthCheckXmlParser$HealthCheckVO.class  
  inflating: appsutil/java/oracle/apps/fnd/txk/healthcheck/xmlrep/HealthCheckXmlParser$HealthComponentItem.class  
  inflating: appsutil/java/oracle/apps/fnd/txk/healthcheck/xmlrep/HealthCheckXmlParser.class  
  inflating: appsutil/java/oracle/apps/fnd/txk/healthcheck/xmlrep/TxkHealthRepPatchVO.class  
  inflating: appsutil/java/oracle/apps/fnd/txk/healthcheck/collector/HealthReportSnapshotCollector.class  
  inflating: appsutil/java/oracle/apps/fnd/txk/healthcheck/util/PatchDownload.class  
  inflating: appsutil/media/FNDSSCORP.gif  
  inflating: appsutil/media/eyeglasses_transparent.gif  
  inflating: appsutil/media/chsd.gif  
  inflating: appsutil/media/chsu.gif  
  inflating: appsutil/txkSetCfgCDB.env  
  inflating: appsutil/txkSetCfgCDB.cmd


    Run AutoConfig on the <RDBMS ORACLE_HOME>

[oracle@fbsebs FBS_fbsebs]$ pwd
/u01/app/FBS/db/tech_st/12.1.0/appsutil/scripts/FBS_fbsebs
[oracle@fbsebs FBS_fbsebs]$ ./adautocfg.sh 
Enter the APPS user password:
The log file for this session is located at: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/FBS_fbsebs/12200934/adconfig.log

AutoConfig is configuring the Database environment...

AutoConfig will consider the custom templates if present.
	Using ORACLE_HOME location : /u01/app/FBS/db/tech_st/12.1.0

Value of s_dbcset is AL32UTF8

Character set is not present in the allowed list. Need to add orai18n.jar to the CLASSPATH.

Library orai18n.jar exists.

Value of s_dbcset is AL32UTF8

Character set is not present in the allowed list. Need to add orai18n.jar to the CLASSPATH.

Library orai18n.jar exists.
	Classpath                   : :/u01/app/FBS/db/tech_st/12.1.0/jdbc/lib/ojdbc6.jar:
/u01/app/FBS/db/tech_st/12.1.0/appsutil/java/xmlparserv2.jar:/u01/app/FBS/db/tech_st
/12.1.0/appsutil/java:/u01/app/FBS/db/tech_st/12.1.0/jlib/netcfg.jar:/u01/app/FBS/db
/tech_st/12.1.0/jlib/ldapjclnt12.jar:/u01/app/FBS/db/tech_st/12.1.0/jlib/orai18n.jar

	Using Context file          : /u01/app/FBS/db/tech_st/12.1.0/appsutil/FBS_fbsebs.xml

Context Value Management will now update the Context file

	Updating Context file...COMPLETED

	Attempting upload of Context file and templates to database...COMPLETED

Updating rdbms version in Context file to db121
Updating rdbms type in Context file to 64 bits
Configuring templates from ORACLE_HOME ...

AutoConfig completed successfully.

 

Make sure the autoconfig completes successfully.

 

10.5       Make sure below parameter is false in DB.

 
SQL> show parameter SEC_CASE_SENSITIVE_LOGON;

NAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
sec_case_sensitive_logon	     boolean	 FALSE

In my environment the parameter id already false.


10.6       Create the initialization parameter setup files


We will be creating below 2 files.

$ORACLE_HOME/dbs/<ORACLE_SID>_initparam.sql and $ORACLE_HOME/dbs/<ORACLE_SID>_datatop.txt files.



Run the following commands to create them



$ cd $ORACLE_HOME/appsutil

$ . ./txkSetCfgCDB.env dboraclehome=<full path of ORACLE_HOME>

$ export ORACLE_SID=<ORACLE_SID>

$ cd $ORACLE_HOME/appsutil/bin

$ perl txkOnPremPrePDBCreationTasks.pl -dboraclehome=<ORACLE_HOME> \

-outdir=<ORACLE_HOME>/appsutil/log -appsuser=<apps user> \

-dbsid=<ORACLE_SID> -skipdbshutdown=yes



[oracle@fbsebs FBS_fbsebs]$ echo $ORACLE_HOME
/u01/app/FBS/db/tech_st/12.1.0
[oracle@fbsebs FBS_fbsebs]$ cd $ORACLE_HOME/appsutil
[oracle@fbsebs appsutil]$ . ./txkSetCfgCDB.env dboraclehome=$ORACLE_HOME

Oracle Home being passed: /u01/app/FBS/db/tech_st/12.1.0
[oracle@fbsebs appsutil]$ export ORACLE_SID=FBS
[oracle@fbsebs appsutil]$ cd $ORACLE_HOME/appsutil/bin
[oracle@fbsebs bin]$ perl txkOnPremPrePDBCreationTasks.pl -dboraclehome=$ORACLE_HOME -outdir=$ORACLE_HOME/appsutil/log 
-appsuser=apps -dbsid=FBS -skipdbshutdown=yes
Enter the APPS Password: 



Script Name    : txkOnPremPrePDBCreationTasks.pl
Script Version : 120.0.12020000.17
Started        : Fri Dec 20 09:38:36 EAT 2024

Log File       : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024
/txkOnPremPrePDBCreationTasks.log


-----------
Values used
-----------
DB Oracle Home        : /u01/app/FBS/db/tech_st/12.1.0
OUT Directory         : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log
Skip DB shutdown      : yes
EBS SID               : FBS
APPS Schema Username  : apps
Is RAC?               : No
Logical Hostname      : 




=========================
Validating oracle home...
=========================
Oracle Home: /u01/app/FBS/db/tech_st/12.1.0 exists.


===========================
Validating out directory...
===========================
Out directory: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log exists.


============================
Inside getDBHostDetails()...
============================
DB Hostname : fbsebs
DB Domain   : finsys.co.ke
Logical hostname is not passed, hence using physical hostname details.
Logical hostname: fbsebs.finsys.co.ke


==========================
Inside setContextName()...
==========================
CONTEXT_NAME: FBS_fbsebs


============================
Inside setFileLocations()...
============================


=====================
Inside getDBName()...
=====================
Generating SQL file : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/get_db_name.sql
SQL output file     : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/get_db_name.out
Spool File          : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/spool_get_db_name.log
==========================
Inside executeSQLFile()...
==========================
Executing the SQL...

Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/12.1.0/appsutil
/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/get_db_name.sql 


==============================
Inside searchFileContents()...
==============================
log_file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/get_db_name.out
pattern: ERROR
=============================
Could not find the pattern...
=============================
Removing the file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/get_db_name.sql

EXIT STATUS: 0
Getting the value of DB Name...
db_name: FBS

PDB_DESC_XML: /u01/app/FBS/db/tech_st/12.1.0/dbs/FBS_PDBDesc.xml
INITPARAM_FILE: /u01/app/FBS/db/tech_st/12.1.0/dbs/FBS_initparam.sql
DATATOP_FILE: /u01/app/FBS/db/tech_st/12.1.0/dbs/FBS_datatop.txt


========================
Inside getDBVersion()...
========================
DB_VERSION = db121



==================================
Validating content of TNS_ADMIN...
==================================
File /u01/app/FBS/db/tech_st/12.1.0/network/admin/FBS_fbsebs/sqlnet.ora exists.
File /u01/app/FBS/db/tech_st/12.1.0/network/admin/FBS_fbsebs/tnsnames.ora exists.


**** Setting ORACLE_SID to FBS
**** Setting TNS_ADMIN to /u01/app/FBS/db/tech_st/12.1.0/network/admin/FBS_fbsebs
**** Setting ORACLE_HOME to /u01/app/FBS/db/tech_st/12.1.0
**** Setting PATH to /u01/app/FBS/db/tech_st/12.1.0/bin:/u01/app/FBS/db/tech_st/12.1.0/perl/
bin:/u01/app/FBS/db/tech_st/12.1.0/bin:/usr/bin:/usr/sbin:/u01/app/FBS/db/tech_st/12.1.0/appsutil/jre/bin:
/u01/app/FBS/db/tech_st/12.1.0/jdk/bin:/usr/ccs/bin:/bin:/usr/bin/X11:/usr/local/bin:/u01/app/FBS/db/tech_st/12.1.0/perl/bin:/
u01/app/FBS/db/tech_st/12.1.0/perl/bin:/u01/app/FBS/db/tech_st/12.1.0/bin:/usr/bin:/usr/sbin:/u01/app/FBS/db/tech_st
/12.1.0/appsutil/jre/bin:/bin:/usr/bin/X11:/usr/local/bin:/u01/app/FBS/db/tech_st/12.1.0/OPatch:/u01/app/FBS/db/tech_st/
12.1.0/perl/bin:/u01/app/FBS/db/tech_st/12.1.0/bin:/usr/bin:/usr/sbin:/u01/app/FBS/db/tech_st/12.1.0/appsutil/jre/bin:
/bin:/usr/bin/X11:/usr/local/bin:/u01/app/FBS/db/tech_st/11.1.0/perl/bin:/u01/app/FBS/db/tech_st/11.1.0/bin:/usr/bin:/
usr/sbin:/u01/app/FBS/db/tech_st/11.1.0/appsutil/jre/bin:/bin:/usr/bin/X11:/usr/local/bin:/home/oracle/.local/bin:
/home/oracle/bin:/sbin:/bin:/usr/bin:/usr/local/bin:/usr/local/sbin:/usr/sbin:.:.:.:.




=====================================
Validating APPS schema credentials...
=====================================
Generating SQL file : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/validate_apps_password.sql
SQL output file     : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/validate_apps_password.log
==========================
Inside executeSQLFile()...
==========================
Executing the SQL...

Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024
/validate_apps_password.sql 
Removing the file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/validate_apps_password.sql



==============================
Inside searchFileContents()...
==============================
log_file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/validate_apps_password.log
pattern: ERROR
=============================
Could not find the pattern...
=============================
EXIT STATUS: 0
Validated APPS credentials.


=============================
Inside checkRACInstances()...
=============================
SQL Command: SELECT DECODE(COUNT(instance_name),0,'RAC-INSTANCES-DOWN','RAC-INSTANCES-RUNNING') FROM gv$instance 
WHERE instance_name NOT IN (SELECT instance_name from v$instance)

Generating SQL file : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_rac_instances.sql
SQL output file     : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_rac_instances.out
Spool File          : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/spool_check_rac_instances.log
==========================
Inside executeSQLFile()...
==========================
Executing the SQL...

Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/12.1.0/appsutil/log
/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_rac_instances.sql 
Removing the file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_rac_instances.sql



==============================
Inside searchFileContents()...
==============================
log_file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_rac_instances.out
pattern: ERROR
=============================
Could not find the pattern...
=============================
EXIT STATUS: 0
Checking for RAC instances status.
All the other RAC instances are down. Proceeding further.



==================================
Inside checkOnlineADOPSession()...
==================================
SQL Command: SELECT DECODE(COUNT(adop_session_id),0,'NO-OPEN-SESSION','OPEN-SESSION-EXISTS') FROM ad_adop_sessions 
WHERE ((prepare_status IN ('N','R')) OR apply_status IN ('N','P') OR cutover_status NOT IN ('X','Y') OR 
abort_status IN ('N','R')) AND abort_status <> 'Y' AND prepare_status <> 'X' AND node_name IN 
(SELECT node_name FROM adop_valid_nodes)

Generating SQL file : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_adop_online_session.sql
SQL output file     : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_adop_online_session.out
Spool File          : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/spool_check_adop_online_session.log
==========================
Inside executeSQLFile()...
==========================
Executing the SQL...

Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024
/check_adop_online_session.sql 
Removing the file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_adop_online_session.sql



==============================
Inside searchFileContents()...
==============================
log_file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_adop_online_session.out
pattern: ERROR
=============================
Could not find the pattern...
=============================
EXIT STATUS: 0
Checking for open ONLINE ADOP session.
No ONLINE ADOP patching cycle. Proceeding further.



====================================
Inside checkHotpatchADOPSession()...
====================================
SQL Command: SELECT DECODE(COUNT(adop_session_id),0,'NO-OPEN-SESSION','OPEN-SESSION-EXISTS') FROM ad_adop_sessions WHERE status <> 'C' 
AND prepare_status = 'X' AND cutover_status = 'X' AND abort_status = 'X' AND apply_status IN ('N','P') AND cleanup_status = 'N' 
AND node_name IN (SELECT node_name FROM adop_valid_nodes)

Generating SQL file : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_adop_hotpatch_session.sql
SQL output file     : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_adop_hotpatch_session.out
Spool File          : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/spool_check_adop_hotpatch_session.log
==========================
Inside executeSQLFile()...
==========================
Executing the SQL...

Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024
/check_adop_hotpatch_session.sql 
Removing the file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_adop_hotpatch_session.sql



==============================
Inside searchFileContents()...
==============================
log_file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_adop_hotpatch_session.out
pattern: ERROR
=============================
Could not find the pattern...
=============================
EXIT STATUS: 0
Checking for open HOTPATCH ADOP session.
No HOTPATCH ADOP patching cycle. Proceeding further.



================================
Inside checkEBSPatchService()...
================================


=====================
Inside getDBName()...
=====================
Generating SQL file : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/get_db_name.sql
SQL output file     : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/get_db_name.out
Spool File          : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/spool_get_db_name.log
==========================
Inside executeSQLFile()...
==========================
Executing the SQL...

Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/get_db_name.sql 


==============================
Inside searchFileContents()...
==============================
log_file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/get_db_name.out
pattern: ERROR
=============================
Could not find the pattern...
=============================
Removing the file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/get_db_name.sql

EXIT STATUS: 0
Getting the value of DB Name...
db_name: FBS



=======================
Inside getDBDomain()...
=======================
Generating SQL file : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/get_db_domain.sql
SQL output file     : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/get_db_domain.out
Spool File          : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/spool_get_db_domain.log
==========================
Inside executeSQLFile()...
==========================
Executing the SQL...

Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/get_db_domain.sql 


==============================
Inside searchFileContents()...
==============================
log_file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/get_db_domain.out
pattern: ERROR
=============================
Could not find the pattern...
=============================
Removing the file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/get_db_domain.sql

EXIT STATUS: 0
Getting the value of DB Name...
db_domain: 



==================================
Inside checkServiceNameExists()...
==================================
service_name: FBS_ebs_patch
SQL Command: SELECT DECODE(COUNT(service_id),0,'SERVICE-NOT-PRESENT','SERVICE-EXISTS') FROM DBA_SERVICES WHERE upper(name)=upper('FBS_ebs_patch')

Generating SQL file : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_service_exists.sql
SQL output file     : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_service_exists.out
Spool File          : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/spool_check_service_exists.log
==========================
Inside executeSQLFile()...
==========================
Executing the SQL...

Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_service_exists.sql 
Removing the file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_service_exists.sql



==============================
Inside searchFileContents()...
==============================
log_file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_service_exists.out
pattern: ERROR
=============================
Could not find the pattern...
=============================
EXIT STATUS: 0
Checking for existence of service: FBS_ebs_patch
Service FBS_ebs_patch exists.


==================================
Inside checkServiceNameExists()...
==================================
service_name: ebs_patch
SQL Command: SELECT DECODE(COUNT(service_id),0,'SERVICE-NOT-PRESENT','SERVICE-EXISTS') FROM DBA_SERVICES WHERE upper(name)=upper('ebs_patch')

Generating SQL file : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_service_exists.sql
SQL output file     : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_service_exists.out
Spool File          : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/spool_check_service_exists.log
==========================
Inside executeSQLFile()...
==========================
Executing the SQL...

Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_service_exists.sql 
Removing the file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_service_exists.sql



==============================
Inside searchFileContents()...
==============================
log_file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/check_service_exists.out
pattern: ERROR
=============================
Could not find the pattern...
=============================
EXIT STATUS: 0
Checking for existence of service: ebs_patch
Service ebs_patch does not exist.


ebs_patch service does not exist. Do nothing.


================================
Inside generateInitParamSQL()...
================================


Generating SQL file : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/generate_init_param.sql
SQL output file     : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/generate_init_param.out
Spool File          : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/spool_generate_init_param.log
==========================
Inside executeSQLFile()...
==========================
Executing the SQL...

Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/generate_init_param.sql 


==============================
Inside searchFileContents()...
==============================
log_file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/generate_init_param.out
pattern: ERROR:
=============================
Could not find the pattern...
=============================
EXIT STATUS: 0
Getting the parameter values and writing to text file.

Adding the parameter "PROCESSES" whose data type is "3".
Adding the parameter "SESSIONS" whose data type is "3".
Adding the parameter "TIMED_STATISTICS" whose data type is "1".
Adding the parameter "SHARED_POOL_SIZE" whose data type is "6".
Adding the parameter "SHARED_POOL_RESERVED_SIZE" whose data type is "6".
Adding the parameter "NLS_LANGUAGE" whose data type is "2".
Adding the parameter "NLS_TERRITORY" whose data type is "2".
Adding the parameter "NLS_SORT" whose data type is "2".
Adding the parameter "NLS_DATE_FORMAT" whose data type is "2".
Adding the parameter "NLS_NUMERIC_CHARACTERS" whose data type is "2".
Adding the parameter "NLS_COMP" whose data type is "2".
Adding the parameter "NLS_LENGTH_SEMANTICS" whose data type is "2".
Mandatory parameter "_DISABLE_ACTUALIZATION_FOR_GRANT" is customized.
Adding the parameter "_DISABLE_ACTUALIZATION_FOR_GRANT" whose data type is "1".
Ignoring the parameter "SERVICE_NAMES" as it is in the EXCLUDED LIST.
Adding the parameter "SGA_TARGET" whose data type is "6".
Adding the parameter "DB_BLOCK_CHECKSUM" whose data type is "2".
Adding the parameter "DB_BLOCK_SIZE" whose data type is "3".
Ignoring the parameter "COMPATIBLE" as it is in the EXCLUDED LIST.
Adding the parameter "LOG_BUFFER" whose data type is "6".
Adding the parameter "LOG_CHECKPOINT_INTERVAL" whose data type is "3".
Adding the parameter "LOG_CHECKPOINT_TIMEOUT" whose data type is "3".
Adding the parameter "DB_FILES" whose data type is "3".
Adding the parameter "LOG_CHECKPOINTS_TO_ALERT" whose data type is "1".
Adding the parameter "DML_LOCKS" whose data type is "3".
Adding the parameter "UNDO_MANAGEMENT" whose data type is "2".
Ignoring the parameter "UNDO_TABLESPACE" as it is in the EXCLUDED LIST.
Adding the parameter "DB_BLOCK_CHECKING" whose data type is "2".
Adding the parameter "RECYCLEBIN" whose data type is "2".
Adding the parameter "SEC_CASE_SENSITIVE_LOGON" whose data type is "1".
Ignoring the parameter "LOCAL_LISTENER" as it is in the EXCLUDED LIST.
Adding the parameter "SESSION_CACHED_CURSORS" whose data type is "3".
Adding the parameter "PLSQL_CODE_TYPE" whose data type is "2".
Adding the parameter "PLSQL_OPTIMIZE_LEVEL" whose data type is "3".
Adding the parameter "JOB_QUEUE_PROCESSES" whose data type is "3".
Adding the parameter "_SYSTEM_TRIG_ENABLED" whose data type is "1".
Adding the parameter "CURSOR_SHARING" whose data type is "2".
Adding the parameter "PARALLEL_MIN_SERVERS" whose data type is "3".
Adding the parameter "PARALLEL_MAX_SERVERS" whose data type is "3".
Ignoring the parameter "DB_NAME" as it is in the EXCLUDED LIST.
Adding the parameter "OPEN_CURSORS" whose data type is "3".
Adding the parameter "QUERY_REWRITE_ENABLED" whose data type is "2".
Adding the parameter "PGA_AGGREGATE_TARGET" whose data type is "6".
Adding the parameter "WORKAREA_SIZE_POLICY" whose data type is "2".
Adding the parameter "OPTIMIZER_SECURE_VIEW_MERGING" whose data type is "1".
Ignoring the parameter "OPTIMIZER_ADAPTIVE_FEATURES" as it is in the EXCLUDED LIST.
Adding the parameter "AQ_TM_PROCESSES" whose data type is "3".
Ignoring the parameter "OLAP_PAGE_POOL_SIZE" as it is in the EXCLUDED LIST.
Adding the parameter "MAX_DUMP_FILE_SIZE" whose data type is "2".
number_of_event_params: 0
Adding the MANDATORY parameter "_PDB_NAME_CASE_SENSITIVE" whose data type is "1".
Adding the MANDATORY parameter "PGA_AGGREGATE_LIMIT" whose data type is "6".


============================
Inside generateDataTops()...
============================


Generating SQL file : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/generate_data_tops.sql
SQL output file     : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/generate_data_tops.out
Spool File          : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/spool_generate_data_tops.log
==========================
Inside executeSQLFile()...
==========================
Executing the SQL...

Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/generate_data_tops.sql 
Removing the file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/generate_data_tops.sql



==============================
Inside searchFileContents()...
==============================
log_file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/generate_data_tops.out
pattern: ERROR
=============================
Could not find the pattern...
=============================
EXIT STATUS: 0
Getting the data tops and writing to text file.



==================================
Inside createPDBDescriptorXML()...
==================================


==================================
Inside backupPDBDescriptorXML()...
==================================


File /u01/app/FBS/db/tech_st/12.1.0/dbs/FBS_PDBDesc.xml does not exist.


File /u01/app/FBS/db/tech_st/12.1.0/dbs/FBS_PDBDesc.xml does not exist.



Generating SQL file : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/create_pdb_desc_xml.sql
SQL output file     : /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/create_pdb_desc_xml.out
==========================
Inside executeSQLFile()...
==========================
Executing the SQL...

Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/create_pdb_desc_xml.sql 


==============================
Inside searchFileContents()...
==============================
log_file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/create_pdb_desc_xml.out
pattern: ERROR
=============================
Could not find the pattern...
=============================
EXIT STATUS: 0
PDB Descriptor XML /u01/app/FBS/db/tech_st/12.1.0/dbs/FBS_PDBDesc.xml created successfully.
LOG FILE: /u01/app/FBS/db/tech_st/12.1.0/appsutil/log/TXK_PRE_PDB_Fri_Dec_20_09_38_34_2024/create_pdb_desc_xml.out.




Exiting from the script.
Ended: Fri Dec 20 09:38:40 EAT 2024
 
[oracle@fbsebs bin]$ cd $ORACLE_HOME/dbs
[oracle@fbsebs dbs]$ ls -lst
total 96
32 -rw-r--r--  1 oracle oinstall 31475 Dec 20 09:38 FBS_PDBDesc.xml
 4 -rw-r--r--  1 oracle oinstall   426 Dec 20 09:38 FBS_datatop.txt
 4 -rw-r--r--  1 oracle oinstall  2925 Dec 20 09:38 FBS_initparam.sql
 0 -rw-r--r--. 1 oracle oinstall     0 Dec 20 09:34 FBS_fbsebs_ifile.ora
 4 -rw-r-----. 1 oracle oinstall  1377 Dec 20 09:34 initFBS_noaq.ora
 8 -rw-r-----. 1 oracle oinstall  5632 Dec 20 09:34 spfileFBS.ora
 4 -rw-rw----. 1 oracle oinstall  1544 Dec 20 08:57 hc_FBS.dat
 4 -rwxr-xr-x. 1 oracle dba        417 Dec 13 09:11 RMANinit.ora
24 -rwxr-xr-x. 1 oracle dba      21893 Dec 13 09:11 initFBS.ora.tmp
 4 -rw-r-----. 1 oracle oinstall    24 Dec  7 10:57 lkFBS
 4 -rw-r-----. 1 oracle oinstall  1331 Dec  7 10:56 initFBS.ora
 4 -rw-r--r--. 1 oracle oinstall  2992 Feb  3  2012 init.ora

10.7       Install 19c Database Oracle Home

 

Refer my previous post on installing the 19c DB Home and pre-requisites. This will install 19.3 DB version.

Follow same, and make sure the 19c is installed in different path.



Only use option to setup the software only.



[oracle@fbsebs 19c]$ mkdir -p /u01/app/FBS/db/tech_st/19c
unzip -d /u01/app/FBS/db/tech_st/19c LINUX.X64_193000_db_home.zip
[oracle@fbsebs 19c]$ export _JAVA_OPTIONS='-Dsun.java2d.xrender=false'
[oracle@fbsebs 19c]$ 
[oracle@fbsebs 19c]$ export CV_ASSUME_DISTID=OEL7.9
[oracle@fbsebs 19c]$ ./runInstaller
 

The directory created will be used as 19c Oracle HOME.



















19C DB software installation is done.

 

10.8       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. "fbscdb" is the CDB which I am going to create now.

The ORACLE_BASE environment variable is set accordingly.

The ORACLE_HOME environment variable points to the new 19c Oracle home.

The PATH environment variable includes $ORACLE_HOME/bin and the directory where the new perl executable is located (usually $ORACLE_HOME/perl/bin).

The LD_LIBRARY_PATH environment variable includes $ORACLE_HOME/lib.

The PERL5LIB environment variable points to the directories where the new perl libraries are located: $ORACLE_HOME/perl/lib/<perl version> and $ORACLE_HOME/perl/lib/site_perl/<perl version>

export ORA_NLS10=/u02/oratest/app/oracle/19.3/nls/data/9idata

 

[oracle@fbsebs 19c]$ cat 19cdb.env 

export ORACLE_HOME=/u01/app/FBS/db/tech_st/19c

export ORACLE_SID=fbscdb

export PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/perl/bin

export ORACLE_BASE=/u01/app/FBS/db

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib

export PERL5LIB=$ORACLE_HOME/perl/lib/5.28.1:$ORACLE_HOME/perl/lib/site_perl/5.28.1

10.9       Apply latest database patches on the 19c Home

Document 1594274.1, Oracle E-Business Suite Release 12.2: Consolidated List of Patches and Technology Bug Fixes from section 3.3.

These are important to be on latest to avoid any issues.



Based on my analysis, I will be applying below  patches. DB binary will be updated to 19.10 from 19.3



37642901-DATABASE RELEASE UPDATE 19.27.0.0.0 (Patch)

37499406-OJVM RELEASE UPDATE 19.27.0.0.0 (Patch)

31424070

Open new terminal with oracle user and source the 19c environment file.

[oracle@fbsebs 19c]$ . 19cdb.env 

[oracle@fbsebs 19c]$ sqlplus / as sysdba


SQL*Plus: Release 19.0.0.0.0 - Production on Fri Dec 20 09:44:00 2024

Version 19.24.0.0.0


Make sure patches are applied on 19c home only.



Unzip all mentioned above patches

 

Download latest Opatch Utility if required or any errors.

 

[oracle@fbsebs dba]$ cp p6880880_190000_Linux-x86-64.zip $ORACLE_HOME

[oracle@fbsebs dba]$ cd $ORACLE_HOME/


[oracle@fbsebs 19c]$ mv OPatch OPatch_old

[oracle@fbsebs 19c]$ unzip p6880880_190000_Linux-x86-64.zip


Go to each patch unzipped directory and apply them

 

cd 37499406

opatch apply

cd 37642901

opatch apply


[oracle@ebstest OPatch]$ ./datapatch 

SQL Patching tool version 19.28.0.0.0 Production on Wed Sep 17 10:28:46 2025

Copyright (c) 2012, 2025, Oracle.  All rights reserved.


Log file for this invocation: /u01/app/FBS/db/cfgtoollogs/sqlpatch/sqlpatch_22625_2025_09_17_10_28_46/sqlpatch_invocation.log


Connecting to database...OK

Gathering database info...done


Note:  Datapatch will only apply or rollback SQL fixes for PDBs

       that are in an open state, no patches will be applied to closed PDBs.

       Please refer to Note: Datapatch: Database 12c Post Patch SQL Automation

       (Doc ID 1585822.1)


Bootstrapping registry and package to current versions...done

Determining current state...done


Current state of interim SQL patches:

Interim patch 37499406 (OJVM RELEASE UPDATE: 19.27.0.0.250415 (37499406)):

  Binary registry: Not installed

  PDB CDB$ROOT: Applied successfully on 18-JUL-25 12.51.10.968141 PM

  PDB FBS: Applied successfully on 18-JUL-25 03.09.25.504903 PM

  PDB PDB$SEED: Applied successfully on 18-JUL-25 01.09.36.616555 PM

Interim patch 37847857 (OJVM RELEASE UPDATE: 19.28.0.0.250715 (37847857)):

  Binary registry: Installed

  PDB CDB$ROOT: Not installed

  PDB FBS: Not installed

  PDB PDB$SEED: Not installed


Current state of release update SQL patches:

  Binary registry:

    19.28.0.0.0 Release_Update 250705030417: Installed

  PDB CDB$ROOT:

    Applied 19.27.0.0.0 Release_Update 250406131139 successfully on 18-JUL-25 01.02.01.746989 PM

  PDB FBS:

    Applied 19.27.0.0.0 Release_Update 250406131139 successfully on 18-JUL-25 03.09.25.463126 PM

  PDB PDB$SEED:

    Applied 19.27.0.0.0 Release_Update 250406131139 successfully on 18-JUL-25 01.16.37.867444 PM


Adding patches to installation queue and performing prereq checks...done

Installation queue:

  For the following PDBs: CDB$ROOT PDB$SEED FBS

    The following interim patches will be rolled back:

      37499406 (OJVM RELEASE UPDATE: 19.27.0.0.250415 (37499406))

    Patch 37960098 (Database Release Update : 19.28.0.0.250715 (37960098)):

      Apply from 19.27.0.0.0 Release_Update 250406131139 to 19.28.0.0.0 Release_Update 250705030417

    The following interim patches will be applied:

      37847857 (OJVM RELEASE UPDATE: 19.28.0.0.250715 (37847857))


Installing patches...

Patch installation complete.  Total patches installed: 9


Validating logfiles...done

Patch 37499406 rollback (pdb CDB$ROOT): SUCCESS

  logfile: /u01/app/FBS/db/cfgtoollogs/sqlpatch/37499406/26115603/37499406_rollback_FBSCDB_CDBROOT_2025Sep17_10_38_28.log (no errors)

Patch 37960098 apply (pdb CDB$ROOT): SUCCESS

  logfile: /u01/app/FBS/db/cfgtoollogs/sqlpatch/37960098/27635722/37960098_apply_FBSCDB_CDBROOT_2025Sep17_10_42_18.log (no errors)

Patch 37847857 apply (pdb CDB$ROOT): SUCCESS

  logfile: /u01/app/FBS/db/cfgtoollogs/sqlpatch/37847857/27534561/37847857_apply_FBSCDB_CDBROOT_2025Sep17_10_42_06.log (no errors)

Patch 37499406 rollback (pdb PDB$SEED): SUCCESS

  logfile: /u01/app/FBS/db/cfgtoollogs/sqlpatch/37499406/26115603/37499406_rollback_FBSCDB_PDBSEED_2025Sep17_10_43_36.log (no errors)

Patch 37960098 apply (pdb PDB$SEED): SUCCESS

  logfile: /u01/app/FBS/db/cfgtoollogs/sqlpatch/37960098/27635722/37960098_apply_FBSCDB_PDBSEED_2025Sep17_10_44_11.log (no errors)

Patch 37847857 apply (pdb PDB$SEED): SUCCESS

  logfile: /u01/app/FBS/db/cfgtoollogs/sqlpatch/37847857/27534561/37847857_apply_FBSCDB_PDBSEED_2025Sep17_10_43_57.log (no errors)

Patch 37499406 rollback (pdb FBS): SUCCESS

  logfile: /u01/app/FBS/db/cfgtoollogs/sqlpatch/37499406/26115603/37499406_rollback_FBSCDB_FBS_2025Sep17_10_43_36.log (no errors)

Patch 37960098 apply (pdb FBS): SUCCESS

  logfile: /u01/app/FBS/db/cfgtoollogs/sqlpatch/37960098/27635722/37960098_apply_FBSCDB_FBS_2025Sep17_10_48_36.log (no errors)

Patch 37847857 apply (pdb FBS): SUCCESS

  logfile: /u01/app/FBS/db/cfgtoollogs/sqlpatch/37847857/27534561/37847857_apply_FBSCDB_FBS_2025Sep17_10_47_25.log (no errors)

SQL Patching tool complete on Wed Sep 17 10:55:18 2025

 

Do not perform any post patch installation steps as they will be done after upgrade.



10.10      Create the nls/data/9idata directory

 

Source  19c env



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

[oracle@fbsebs dba]$ cd /u01/app/FBS/db/tech_st/19c/

[oracle@fbsebs 19c]$ unset PERL5LIB

[oracle@fbsebs 19c]$ perl $ORACLE_HOME/nls/data/old/cr9idata.pl

Directory /u01/app/FBS/db/tech_st/19c/nls/data/9idata already exist. Overwriting...

Copying files to /u01/app/FBS/db/tech_st/19c/nls/data/9idata...

Copy finished. 

Please reset environment variable ORA_NLS10 to /u01/app/FBS/db/tech_st/19c/nls/data/9idata!

After creating the directory, make sure that the ORA_NLS10 environment variable is set to the full path of the 9idata directory whenever you enable the 19c Oracle home

 

[oracle@fbsebs 19c]$ cat 19cdb.env

export ORACLE_HOME=/u01/app/FBS/db/tech_st/19c

export ORACLE_SID=fbscdb

export PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/perl/bin

export ORACLE_BASE=/u01/app/FBS/db

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib

export PERL5LIB=$ORACLE_HOME/perl/lib/5.38.2:$ORACLE_HOME/perl/lib/site_perl/5.38.2

export ORA_NLS10=/u01/app/FBS/db/tech_st/19c/nls/data/9idata


10.11      Copy appsutil.zip from Application Tier to Database 19c home

On Application Tier source run file system environment 

[applmgr@fbsebs ~]$ perl $AD_TOP/bin/admkappsutil.pl

Starting the generation of appsutil.zip

Log file located at /u01/app/FBS/fs2/inst/apps/FBS_fbsebs/admin/log/MakeAppsUtil_12200949.log

output located at /u01/app/FBS/fs2/inst/apps/FBS_fbsebs/admin/out/appsutil.zip

MakeAppsUtil completed successfully.



Copy appsutil.zip file to 19c Oracle Home and unzip

[oracle@fbsebs 19c]$ cd $ORACLE_HOME

[oracle@fbsebs 19c]$ pwd

/u01/app/FBS/db/tech_st/19c

[oracle@fbsebs 19c]$ scp -r /u01/app/FBS/fs2/inst/apps/FBS_fbsebs/admin/out/appsutil.zip .

[oracle@fbsebs 19c]$ ls

19cdb.env     client  dbjava       env.ora        jdbc  network     oracore      p6880880_190000_Linux-x86-64.zip  rdbms          runInstaller   sqlpatch  wwg

addnode       clone   dbs          has            jdk   nls         oraInst.loc  perl                              relnotes       schagent.conf  sqlplus   xdk

apex          crs     deinstall    hs             jlib  odbc        ord          plsql                             root.sh        sdk            srvm

appsutil.zip  css     demo         install        ldap  olap        ords         precomp                           root.sh.old    sdo            suptools

assistants    ctx     diagnostics  instantclient  lib   OPatch      oss          QOpatch                           root.sh.old.1  slax           ucp

bin           cv      drdaas       inventory      md    OPatch_bak  oui          R                                 root.sh.old.2  sqlcl          usm

cfgtoollogs   data    dv           javavm         mgw   opmn        owm          racg                              root.sh.old.3  sqlj           utl

[oracle@fbsebs 19c]$ unzip -o appsutil.zip

Archive:  appsutil.zip

   creating: appsutil/

   creating: appsutil/template/

  inflating: appsutil/template/addbtmpl.drv  

  inflating: appsutil/template/addbactmpl.drv  

  inflating: appsutil/template/addbcltmpl.drv  

  inflating: appsutil/template/txkEBSWrapper.pl  

  inflating: appsutil/template/ad8idbnt.env  

  inflating: appsutil/template/addbprf.cmd  

  inflating: appsutil/template/addbctl.cmd  

  inflating: appsutil/template/addlnctl.cmd  

  inflating: appsutil/template/adlsnodes_nt.cmd  

  inflating: appsutil/template/adsvdb.cmd  

  inflating: appsutil/template/adsvdcnv.cmd  

  inflating: appsutil/template/adsvdlsn.cmd  

  inflating: appsutil/template/adupdlib_nt.sql  

  inflating: appsutil/template/adora8iinf.cmd  

  inflating: appsutil/template/adora10g_stub.inf  

  inflating: appsutil/template/addbsynhnm.cmd  

  inflating: appsutil/template/adcrobj.cmd  

  inflating: appsutil/template/afinit_NT_ALL.ora  

  inflating: appsutil/template/afdbprf.cmd  

  inflating: appsutil/template/addbprf.sh  

  inflating: appsutil/template/addbctl.sh  

  inflating: appsutil/template/adlsnodes_ux.sh  

  inflating: appsutil/template/adsvdb.sh  

  inflating: appsutil/template/adsvdcnv.sh  

  inflating: appsutil/template/adsvdlsn.sh  

  inflating: appsutil/template/adupdlib_ux.sql  

  inflating: appsutil/template/addlnctl.sh  

  inflating: appsutil/template/adcrobj.sh  

  inflating: appsutil/template/txkCreateEBSDirObj.sh  

  inflating: appsutil/template/txkCreateEBSDirObj.cmd  

  inflating: appsutil/template/addbperms.sh  

  inflating: appsutil/template/txkConfigDbOcm.pl  

  inflating: appsutil/template/afmkinit.sh  

  inflating: appsutil/template/afdbprf.sh  

  inflating: appsutil/template/addbprf.sql  

  inflating: appsutil/template/addbccnv.sql  

  inflating: appsutil/template/adstopdb.sql  

  inflating: appsutil/template/adstrtdb.sql  

  inflating: appsutil/template/adcrobj.sql  

  inflating: appsutil/template/txkCreateEBSDirObj.sql  

  inflating: appsutil/template/adchknls.pl  

  inflating: appsutil/template/afdbprf.sql  

  inflating: appsutil/template/txkcreateACL.cmd  

  inflating: appsutil/template/txkcreateACL.sh  

  inflating: appsutil/template/txkcreateACL.sql  

  inflating: appsutil/template/txkcreateACL_db122.sql  

  inflating: appsutil/template/txkcreateACL_db19.sql  

  inflating: appsutil/template/afifilecbo.ora  

  inflating: appsutil/template/afinit_db101.ora  

  inflating: appsutil/template/afinit_db102.ora  

  inflating: appsutil/template/afinit_db111.ora  

  inflating: appsutil/template/afinit_db112.ora  

  inflating: appsutil/template/afinit_db121.ora  

  inflating: appsutil/template/afinit_db122.ora  

  inflating: appsutil/template/afinit_db19.ora  

  inflating: appsutil/template/afinit_db101RAC.ora  

  inflating: appsutil/template/afinit_db102RAC.ora  

  inflating: appsutil/template/afinit_db111RAC.ora  

  inflating: appsutil/template/afinit_db112RAC.ora  

  inflating: appsutil/template/afinit_db121RAC.ora  

  inflating: appsutil/template/afinit_db122RAC.ora  

  inflating: appsutil/template/afinit_db19RAC.ora  

  inflating: appsutil/template/config_sol.s  

  inflating: appsutil/template/config_sol_64.s  

  inflating: appsutil/template/config_aix.s  

  inflating: appsutil/template/config_aix_64.s  

  inflating: appsutil/template/config_ux.tmp  

  inflating: appsutil/template/config_ux_db121.tmp  

  inflating: appsutil/template/ad8idbux.env  

  inflating: appsutil/template/ad8ilsnr.ora  

  inflating: appsutil/template/adlsnr10RAC.ora  

  inflating: appsutil/template/ons_config_db.tmp  

  inflating: appsutil/template/ad8isqlnet.ora  

  inflating: appsutil/template/ad8itns.ora  

  inflating: appsutil/template/txkDBSecUserAuditActionBanner_pl.tmp  

  inflating: appsutil/template/adcdbctl_sh.tmp  

  inflating: appsutil/template/adpdbctl_sh.tmp  

  inflating: appsutil/template/adcdbctl_nt.tmp  

  inflating: appsutil/template/adpdbctl_nt.tmp  

  inflating: appsutil/template/adstopcdb_sql.tmp  

  inflating: appsutil/template/adstoppdb_sql.tmp  

  inflating: appsutil/template/adstrtcdb_sql.tmp  

  inflating: appsutil/template/adstrtpdb_sql.tmp  

  inflating: appsutil/template/adora19cinf.cmd  

  inflating: appsutil/template/adora19c_stub.inf  

  inflating: appsutil/template/adora23cinf.cmd  

  inflating: appsutil/template/adora23c_stub.inf  

  inflating: appsutil/template/adsvcdlsn.cmd  

  inflating: appsutil/template/adautocfg_nt.cmd  

  inflating: appsutil/template/adautocfg_ux.sh  

  inflating: appsutil/template/adcvmdb.xml  

  inflating: appsutil/template/adxdbctx.tmp  

  inflating: appsutil/template/adxdbinf.tmp  

  inflating: appsutil/template/adexecsql.pl  

  inflating: appsutil/template/adcrdb.cmd  

  inflating: appsutil/template/adcrsvc.cmd  

  inflating: appsutil/template/adcrdbrdlg.cmd  

  inflating: appsutil/template/afmkinit.cmd  

  inflating: appsutil/template/afmkinit_inst.cmd  

  inflating: appsutil/template/adcrdb.sh  

  inflating: appsutil/template/adcrdbrdlg.sh  

  inflating: appsutil/template/adlnkoh.sh  

  inflating: appsutil/template/addbupdgsm.sql  

  inflating: appsutil/template/adclobconv.sql  

  inflating: appsutil/template/adclobtmp.sql  

  inflating: appsutil/template/adclobcln.sql  

  inflating: appsutil/template/adlicnse.sql  

  inflating: appsutil/template/adpreclone.pl  

  inflating: appsutil/template/adcfgclone.pl  

  inflating: appsutil/template/adcldbapply.sql  

  inflating: appsutil/template/adcldbclean.sql  

  inflating: appsutil/template/adcldbgenrest.sql  

  inflating: appsutil/template/adcldbstage.sql  

  inflating: appsutil/template/adouidb.pl  

  inflating: appsutil/template/adouitools.pl  

  inflating: appsutil/template/adouiweboh.pl  

  inflating: appsutil/template/adpredb.drv  

  inflating: appsutil/template/adpretools.drv  

  inflating: appsutil/template/adpreweboh.drv  

  inflating: appsutil/template/adregdb.drv  

  inflating: appsutil/template/adregtools.drv  

  inflating: appsutil/template/adregweboh.drv  

  inflating: appsutil/template/adcmclean.sql  

  inflating: appsutil/template/adcctclean.sql  

  inflating: appsutil/template/db19c_install_rsp.tmp  

  inflating: appsutil/template/db23c_install_rsp.tmp  

  inflating: appsutil/template/adoradbcinf.cmd  

  inflating: appsutil/template/adora8i_stub.inf  

  inflating: appsutil/template/adora8i_conf.inf  

  inflating: appsutil/template/adora9i_stub.inf  

  inflating: appsutil/template/adora9i_conf.inf  

  inflating: appsutil/template/adcdblnctl_sh.tmp  

  inflating: appsutil/template/adcdblnctl_nt.tmp  

  inflating: appsutil/template/adcdb_ux_env.tmp  

  inflating: appsutil/template/adcdb_nt_cmd.tmp  

  inflating: appsutil/template/listener_ora_cdb_db121_rac.tmp  

  inflating: appsutil/template/listener_ora_cdb_db121.tmp  

  inflating: appsutil/template/listener_ora_cdb_db19.tmp  

  inflating: appsutil/template/listener_ora_cdb_db19_rac.tmp  

  inflating: appsutil/template/listener_ora_cdb_db23.tmp  

  inflating: appsutil/template/listener_ora_cdb_db23_rac.tmp  

  inflating: appsutil/template/tnsnames_ora_cdb_db121.tmp  

  inflating: appsutil/template/init_ora_cdb_db121.tmp  

  inflating: appsutil/template/init_ora_cdb_db122.tmp  

  inflating: appsutil/template/init_ora_cdb_db19.tmp  

  inflating: appsutil/template/txk_create_cdb_db_sql.tmp  

  inflating: appsutil/template/sqlnet_ora_cdb_db122.tmp  

  inflating: appsutil/template/sqlnet_ora_cdb_db19.tmp  

  inflating: appsutil/template/sqlnet_ora_cdb_db19_nt.tmp  

  inflating: appsutil/template/sqlnet_ora_cdb_db23.tmp  

   creating: appsutil/perl/

   creating: appsutil/perl/TXK/

  inflating: appsutil/perl/TXK/ARGS.pm  

  inflating: appsutil/perl/TXK/AutoBuild.pm  

  inflating: appsutil/perl/TXK/AutoConfig.pm  

  inflating: appsutil/perl/TXK/Common.pm  

  inflating: appsutil/perl/TXK/Error.pm  

  inflating: appsutil/perl/TXK/FileSys.pm  

  inflating: appsutil/perl/TXK/IO.pm  

  inflating: appsutil/perl/TXK/Inventory.pm  

  inflating: appsutil/perl/TXK/Log.pm  

  inflating: appsutil/perl/TXK/OSD.pm  

  inflating: appsutil/perl/TXK/Process.pm  

  inflating: appsutil/perl/TXK/Reports.pm  

  inflating: appsutil/perl/TXK/Restart.pm  

  inflating: appsutil/perl/TXK/RunScript.pm  

  inflating: appsutil/perl/TXK/Runtime.pm  

  inflating: appsutil/perl/TXK/SQLPLUS.pm  

  inflating: appsutil/perl/TXK/Script.pm  

  inflating: appsutil/perl/TXK/Techstack.pm  

  inflating: appsutil/perl/TXK/TechstackDB.pm  

  inflating: appsutil/perl/TXK/Util.pm  

  inflating: appsutil/perl/TXK/Validate.pm  

  inflating: appsutil/perl/TXK/XML.pm  

  inflating: appsutil/perl/TXK/HealthCheckReport.pm  

   creating: appsutil/perl/ADX/

   creating: appsutil/perl/ADX/util/

  inflating: appsutil/perl/ADX/util/Java.pm  

  inflating: appsutil/perl/ADX/util/Sysutil.pm  

   creating: appsutil/bin/

  inflating: appsutil/bin/TXKScript.pl  

  inflating: appsutil/bin/txkrun.pl  

  inflating: appsutil/bin/txkInventory.pl  

  inflating: appsutil/bin/txkSyncDBConfig.pl  

  inflating: appsutil/bin/txkGenCtxInfRep.pl  

  inflating: appsutil/bin/txkHealthCheckReport.pl  

  inflating: appsutil/bin/adbldxml.pl  

  inflating: appsutil/bin/adchkcfg.cmd  

  inflating: appsutil/bin/adchkcfg.sh  

  inflating: appsutil/bin/adconfig.cmd  

  inflating: appsutil/bin/adconfig.sh  

  inflating: appsutil/bin/adconfig.pl  

  inflating: appsutil/bin/adcustomizer.cmd  

  inflating: appsutil/bin/adcustomizer.sh  

  inflating: appsutil/bin/adcvm.cmd  

  inflating: appsutil/bin/adcvm.sh   

  inflating: appsutil/bin/addlnctl.pl  

  inflating: appsutil/bin/adgentns.pl  

  inflating: appsutil/bin/adtmplreport.cmd  

  inflating: appsutil/bin/adtmplreport.sh  

  inflating: appsutil/bin/adgendisks.pl  

  inflating: appsutil/bin/txkSetADOPPatchSrvName.pl  

  inflating: appsutil/bin/txkSetADOPPatchSrvName.sh  

  inflating: appsutil/bin/txkSetADOPPatchSrvName.cmd  

  inflating: appsutil/bin/txkCfgUtlfileDir.pl  

  inflating: appsutil/bin/txkCfgUtlfileDir.sh  

  inflating: appsutil/bin/txkCfgUtlfileDir.cmd  

  inflating: appsutil/bin/txkCreateEBSPDBService.pl  

  inflating: appsutil/bin/txkCreateEBSPDBService.sh  

  inflating: appsutil/bin/txkCreateEBSPDBService.cmd  

  inflating: appsutil/bin/txkSetScanName.pl  

  inflating: appsutil/bin/txkSavePDBState.pl  

  inflating: appsutil/bin/txkSetUnicodeCharSet.pl  

  inflating: appsutil/bin/adclone.sh  

  inflating: appsutil/bin/adclone.pl  

  inflating: appsutil/bin/adchkutl.sh  

  inflating: appsutil/bin/adclonectx.pl  

  inflating: appsutil/bin/adxerr.pl  

  inflating: appsutil/bin/txkCreatePDB.pl  

  inflating: appsutil/bin/txkPostPDBCreationTasks.pl  

  inflating: appsutil/bin/txkPrePDBCreationTasks.pl  

  inflating: appsutil/bin/txkOnPremPrePDBCreationTasks.pl  

  inflating: appsutil/bin/txkCfgCDB.pl  

  inflating: appsutil/bin/txkCfgPDBRACNode.pl  

  inflating: appsutil/bin/txkChkPDBCompatability.pl  

  inflating: appsutil/bin/txkGenDBInitParam.pl  

  inflating: appsutil/bin/txkGenCDBTnsAdmin.pl  

  inflating: appsutil/bin/txkGenPDBTnsAdmin.pl  

  inflating: appsutil/bin/txkPDBCloneTasks.pl  

   creating: appsutil/html/

  inflating: appsutil/html/txkValidate.xsl  

  inflating: appsutil/html/txkMessages.xml  

  inflating: appsutil/html/txkInventory.xml  

  inflating: appsutil/html/txkDiagnostics.xml  

  inflating: appsutil/html/txkValObjMap.xml  

  inflating: appsutil/html/txkHealthCheckReport.xml  

  inflating: appsutil/html/txkCtxInfReport.xsl  

  inflating: appsutil/html/txkCtxInfTextReport.xsl  

  inflating: appsutil/html/autoconfig_profile.xsl  

   creating: appsutil/html/cabo/

   creating: appsutil/html/cabo/images/

   creating: appsutil/html/cabo/images/swan/

  inflating: appsutil/html/cabo/images/swan/t.gif  

 extracting: appsutil/html/cabo/images/swan/topTabR.gif  

  inflating: appsutil/html/cabo/images/swan/topTabL.gif  

  inflating: appsutil/html/cabo/images/swan/topTabDDjoint.gif  

  inflating: appsutil/html/cabo/images/swan/topTabDAjoint.gif  

  inflating: appsutil/html/cabo/images/swan/topTabBg.gif  

  inflating: appsutil/html/cabo/images/swan/topTabADjoint.gif  

  inflating: appsutil/html/cabo/images/swan/topDimTabR.gif  

  inflating: appsutil/html/cabo/images/swan/topDimTabL.gif  

  inflating: appsutil/html/cabo/images/swan/topDimTabBg.gif  

  inflating: appsutil/html/cabo/images/swan/navBarUnderTopTabsBg.gif  

  inflating: appsutil/html/cabo/images/swan/headerBg.jpg  

  inflating: appsutil/html/cabo/images/swan/footerBg.gif  

  inflating: appsutil/html/ProcessCloneDef.xsl  

   creating: appsutil/sql/

  inflating: appsutil/sql/adgrants.sql  

   creating: appsutil/java/

  inflating: appsutil/java/xmlparserv2.jar  

   creating: appsutil/java/oracle/

   creating: appsutil/java/oracle/apps/

   creating: appsutil/java/oracle/apps/ad/

   creating: appsutil/java/oracle/apps/ad/autoconfig/

   creating: appsutil/java/oracle/apps/ad/autoconfig/oam/

  inflating: appsutil/java/oracle/apps/ad/autoconfig/oam/FsCtxFileException.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/oam/InDbCtxFile.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/oam/InDbCtxFileException.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/oam/OAMUtilConsts.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/oam/CtxSynchronizer.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/oam/CtxSynchronizerException.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/oam/CustomizationRecord.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/oam/FsCtxFile.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/ServiceControl.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/ACThreadPoolExecutor$1.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/ACThreadPoolExecutor.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/ACThreadPoolExecutorException.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/AppltopDrivers.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/AutoConfigProcess.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/AutoConfigSynchronizer$1.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/AutoConfigSynchronizer.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/AutoConfigSynchronizerException.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/ConfigInfo.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/ExecuteProcess.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/ExecuteService.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/HtmlDiffReport$HtmlColorDiff.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/HtmlDiffReport.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/InstantiateDriver$InstantiateDriverEntry.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/InstantiateDriver.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/InstantiateFile$ListSorter.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/InstantiateFile.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/InstantiateProcess.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/ListDbUpdates$DbUpdate.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/ListDbUpdates.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/ListProfiles$StoreProfileData.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/ListProfiles.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/PerformanceProfileReport$1.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/PerformanceProfileReport$Builder.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/PerformanceProfileReport.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/RestoreProfile.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/ServiceControl$Service.class  

  inflating: appsutil/java/oracle/apps/ad/autoconfig/ServiceControl$ServiceGroup.class  

   creating: appsutil/java/oracle/apps/ad/clone/

   creating: appsutil/java/oracle/apps/ad/clone/util/

  inflating: appsutil/java/oracle/apps/ad/clone/util/DataSourceXMLParser.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/DirectoryCopier.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/FMWOracleHomePreReqCheck.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/MakeOHCloner.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/OPWrapper.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/OracleHomeCloner$AbsorbPrintStream.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/OracleHomeCloner.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/ProgressIndicator.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/RMANDatabase.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/StageCopyApplTop.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/StageCopyAppsTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/StageCopyDBTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/StageCopyDatabase.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/StageCustomApplTop.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/StageCustomAppsTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/StageCustomDBTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/StageCustomDatabase.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/StageLinkApplTop.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/StageLinkAppsTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/StageLinkDBTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/StageLinkDatabase.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/TSComnTopLister.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/WLSDomainCleanupUtil.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/ZipApplTop.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/ZipAppsTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/ZipDBTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/ZipDatabase.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/ZipHolder.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/ZipTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/CopyExecutor.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/CreateCloningStage.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/DataSourceXMLParser$1.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/BinPacker$DirectoryInfo.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/BinPacker.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/CloneCleanser.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/CloneProcessor.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/CloneUtil$1.class  

  inflating: appsutil/java/oracle/apps/ad/clone/util/CloneUtil.class  

   creating: appsutil/java/oracle/apps/ad/clone/oam/

  inflating: appsutil/java/oracle/apps/ad/clone/oam/CloneNotifier.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/CloneNotifierException.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/CtxFileException.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/InvalidArgValException.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/OAMClone.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/OAMCloneConsts.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/OAMCloneException.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/ADXMsgLog.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/ClnActivity.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/ClnConstants.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/ClnException.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/ClnNodeStatus.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/ClnStatusDetails.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/ClnTask.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/ClnTaskList.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/ClnUtil.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/ClnValidationException.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/CloneDefParser.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/CloneDefParserException.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/CloneDefResultException.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/CloneDefXmlException.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/CloneDefXslException.class  

  inflating: appsutil/java/oracle/apps/ad/clone/oam/CloneDefXsltException.class  

  inflating: appsutil/java/oracle/apps/ad/clone/StagewlsTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/ApplyRmanDatabase.class  

  inflating: appsutil/java/oracle/apps/ad/clone/ApplyfmwTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/ApplyohsTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/ApplywlsTechStack$1.class  

  inflating: appsutil/java/oracle/apps/ad/clone/ApplywlsTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/CloneApplTop.class  

  inflating: appsutil/java/oracle/apps/ad/clone/CloneAppsTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/CloneAppsTier.class  

  inflating: appsutil/java/oracle/apps/ad/clone/CloneDBTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/CloneDBTier.class  

  inflating: appsutil/java/oracle/apps/ad/clone/CloneDatabase.class  

  inflating: appsutil/java/oracle/apps/ad/clone/CloneTaskTracker$1.class  

  inflating: appsutil/java/oracle/apps/ad/clone/CloneTaskTracker.class  

  inflating: appsutil/java/oracle/apps/ad/clone/DataSourcePropVO.class  

  inflating: appsutil/java/oracle/apps/ad/clone/FSCloneApplyAppsTier$1.class  

  inflating: appsutil/java/oracle/apps/ad/clone/FSCloneApplyAppsTier.class  

  inflating: appsutil/java/oracle/apps/ad/clone/FSCloneStageAppsTier.class  

  inflating: appsutil/java/oracle/apps/ad/clone/MergeApplTop$FileEntry.class  

  inflating: appsutil/java/oracle/apps/ad/clone/MergeApplTop.class  

  inflating: appsutil/java/oracle/apps/ad/clone/RCloneAbstract.class  

  inflating: appsutil/java/oracle/apps/ad/clone/RCloneApplyAppstier.class  

  inflating: appsutil/java/oracle/apps/ad/clone/RCloneSFSAddNode$ProcessPatchAddNode.class  

  inflating: appsutil/java/oracle/apps/ad/clone/RCloneSFSAddNode$ProcessRunAddNode.class  

  inflating: appsutil/java/oracle/apps/ad/clone/RCloneSFSAddNode.class  

  inflating: appsutil/java/oracle/apps/ad/clone/StageApplTop.class  

  inflating: appsutil/java/oracle/apps/ad/clone/StageAppsTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/StageAppsTier.class  

  inflating: appsutil/java/oracle/apps/ad/clone/StageDBTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/StageDBTier.class  

  inflating: appsutil/java/oracle/apps/ad/clone/StageDatabase.class  

  inflating: appsutil/java/oracle/apps/ad/clone/StagefmwTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/StageohsTechStack.class  

   creating: appsutil/java/oracle/apps/ad/clone/syncup/

  inflating: appsutil/java/oracle/apps/ad/clone/syncup/DirectorySyncup$1.class  

  inflating: appsutil/java/oracle/apps/ad/clone/syncup/DirectorySyncup$Builder.class  

  inflating: appsutil/java/oracle/apps/ad/clone/syncup/DirectorySyncup.class  

  inflating: appsutil/java/oracle/apps/ad/clone/syncup/FSCloneSyncModeMetadata$SYNC_MODE.class  

  inflating: appsutil/java/oracle/apps/ad/clone/syncup/FSCloneSyncModeMetadata.class  

  inflating: appsutil/java/oracle/apps/ad/clone/syncup/FSCloneSyncModeMetadataCreator$1.class  

  inflating: appsutil/java/oracle/apps/ad/clone/syncup/FSCloneSyncModeMetadataCreator$Builder.class  

  inflating: appsutil/java/oracle/apps/ad/clone/syncup/FSCloneSyncModeMetadataCreator.class  

  inflating: appsutil/java/oracle/apps/ad/clone/ApplTopCopier.class  

  inflating: appsutil/java/oracle/apps/ad/clone/ApplyApplTop.class  

  inflating: appsutil/java/oracle/apps/ad/clone/ApplyAppsTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/ApplyAppsTier.class  

  inflating: appsutil/java/oracle/apps/ad/clone/ApplyDBTechStack.class  

  inflating: appsutil/java/oracle/apps/ad/clone/ApplyDBTier.class  

  inflating: appsutil/java/oracle/apps/ad/clone/ApplyDatabase.class  

   creating: appsutil/java/oracle/apps/ad/clone/constants/

  inflating: appsutil/java/oracle/apps/ad/clone/constants/CloneConstants.class  

   creating: appsutil/java/oracle/apps/ad/context/

  inflating: appsutil/java/oracle/apps/ad/context/WLACMapEntry.class  

  inflating: appsutil/java/oracle/apps/ad/context/AnalyzeContext.class  

  inflating: appsutil/java/oracle/apps/ad/context/AppsContext.class  

  inflating: appsutil/java/oracle/apps/ad/context/CloneContext$ContextUtil.class  

  inflating: appsutil/java/oracle/apps/ad/context/CloneContext$DBHomeProfile.class  

  inflating: appsutil/java/oracle/apps/ad/context/CloneContext$RACContext.class  

  inflating: appsutil/java/oracle/apps/ad/context/CloneContext$RACNode.class  

  inflating: appsutil/java/oracle/apps/ad/context/CloneContext.class  

  inflating: appsutil/java/oracle/apps/ad/context/Config2Context.class  

  inflating: appsutil/java/oracle/apps/ad/context/ConfigFile.class  

  inflating: appsutil/java/oracle/apps/ad/context/Context2Context.class  

  inflating: appsutil/java/oracle/apps/ad/context/ContextProcess.class  

  inflating: appsutil/java/oracle/apps/ad/context/ContextSelfHeal.class  

  inflating: appsutil/java/oracle/apps/ad/context/CreateContext.class  

  inflating: appsutil/java/oracle/apps/ad/context/CtxValueMgt.class  

  inflating: appsutil/java/oracle/apps/ad/context/DependencyModeller$ContextTemplateParser.class  

  inflating: appsutil/java/oracle/apps/ad/context/DependencyModeller$Node.class  

  inflating: appsutil/java/oracle/apps/ad/context/DependencyModeller.class  

  inflating: appsutil/java/oracle/apps/ad/context/GenerateAppsContext.class  

  inflating: appsutil/java/oracle/apps/ad/context/GenerateContext.class  

  inflating: appsutil/java/oracle/apps/ad/context/NameValue.class  

  inflating: appsutil/java/oracle/apps/ad/context/NotificationContext.class  

  inflating: appsutil/java/oracle/apps/ad/context/OAVars.class  

  inflating: appsutil/java/oracle/apps/ad/context/OAVarsDesc.class  

  inflating: appsutil/java/oracle/apps/ad/context/ParseDefxmlFile$AppsDefXMLFile.class  

  inflating: appsutil/java/oracle/apps/ad/context/ParseDefxmlFile$OAVarDefXMLFile.class  

  inflating: appsutil/java/oracle/apps/ad/context/ParseDefxmlFile.class  

  inflating: appsutil/java/oracle/apps/ad/context/RetrieveContext$CtxtFile.class  

  inflating: appsutil/java/oracle/apps/ad/context/RetrieveContext.class  

  inflating: appsutil/java/oracle/apps/ad/context/ScriptEntry.class  

  inflating: appsutil/java/oracle/apps/ad/context/ScriptsLog.class  

  inflating: appsutil/java/oracle/apps/ad/context/StoreDataOfFile.class  

  inflating: appsutil/java/oracle/apps/ad/context/UpdateContext.class  

   creating: appsutil/java/oracle/apps/ad/revision/

  inflating: appsutil/java/oracle/apps/ad/revision/AppsRevision.class  

  inflating: appsutil/java/oracle/apps/ad/revision/AppsRevisionFinder.class  

  inflating: appsutil/java/oracle/apps/ad/revision/AppsRevisionParser.class  

  inflating: appsutil/java/oracle/apps/ad/revision/Ident.class  

  inflating: appsutil/java/oracle/apps/ad/revision/IdentStringFinder.class  

  inflating: appsutil/java/oracle/apps/ad/revision/Revision.class  

  inflating: appsutil/java/oracle/apps/ad/revision/RevisionFinder.class  

  inflating: appsutil/java/oracle/apps/ad/revision/RevisionParser.class  

   creating: appsutil/java/oracle/apps/ad/tools/

   creating: appsutil/java/oracle/apps/ad/tools/configuration/

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ADGenTopFile$ProdInfo.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/EBSDomainManager.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/EBSNodesRegisterADB.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/EBSProvisioner$ExecuteThreadedNMStart.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/EBSProvisioner$ParamAnnotation.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/EBSProvisioner$WLSTStatus.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/EBSProvisioner.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/FileSysDBCtxMerge.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/InitOra.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/JaznCredentialManager.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/NetServiceHandler.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/RACAutoConfig$ClusterCmdHolder.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/RACAutoConfig.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/RegisterNodePreReq$1.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/RegisterNodePreReq$CONN_FILTER_CONTROL_OPTIONS.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/RegisterNodePreReq$ParamAnnotation.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/RegisterNodePreReq$WLSTStatus.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/RegisterNodePreReq.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/RegisterWLSListeners$AddNotificationListener.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ADGenTopFile.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ADOPCustomSyncUp$CustomCommandUtil.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ADOPCustomSyncUp.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ATNameHandler.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ATTemplateReport.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ApplCSFLogManager.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ApplicationVersionManager.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/CVMHelper.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ConfigChangeDetector.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/Customizer.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/DataModelHandler.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/RegisterWLSListeners.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/SyncContext$ParamAnnotation.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/SyncContext.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/SyncProdTops.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/TNSAlias.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/TNSAliasAddress.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/TNSAliasDescription.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/UpdateEBSDeploymentPlans.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ValidateIANACset.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/ValidateTechInstall.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/VersionConflictListGenerator.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/WorkBench.class  

   creating: appsutil/java/oracle/apps/ad/tools/configuration/wls/

   creating: appsutil/java/oracle/apps/ad/tools/configuration/wls/filter/

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/wls/filter/EBSConnectionFilterImpl.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/wls/filter/EBSConnectionFilterRulesValidator.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/wls/filter/EBSFastFilterEntry.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/wls/filter/EBSFilterEntry.class  

  inflating: appsutil/java/oracle/apps/ad/tools/configuration/wls/filter/EBSSlowFilterEntry.class  

  inflating: appsutil/java/oracle/apps/ad/tools/CDLocator.class  

  inflating: appsutil/java/oracle/apps/ad/tools/CDZipBlock.class  

  inflating: appsutil/java/oracle/apps/ad/tools/CDZipEntry.class  

  inflating: appsutil/java/oracle/apps/ad/tools/DirectoryParser.class  

  inflating: appsutil/java/oracle/apps/ad/tools/GenDBDriver.class  

  inflating: appsutil/java/oracle/apps/ad/tools/MakeAppsUtil.class  

  inflating: appsutil/java/oracle/apps/ad/tools/MakeCDArea.class  

  inflating: appsutil/java/oracle/apps/ad/tools/ADFileListUtils.class  

  inflating: appsutil/java/oracle/apps/ad/tools/ADProduct.class  

  inflating: appsutil/java/oracle/apps/ad/tools/ADRunner.class  

  inflating: appsutil/java/oracle/apps/ad/tools/AdCreateCtlFile.class  

  inflating: appsutil/java/oracle/apps/ad/tools/AdCreateCtlFileRman.class  

  inflating: appsutil/java/oracle/apps/ad/tools/ADFileList.class  

  inflating: appsutil/java/oracle/apps/ad/tools/ADFile.class  

   creating: appsutil/java/oracle/apps/ad/util/

   creating: appsutil/java/oracle/apps/ad/util/zip/

  inflating: appsutil/java/oracle/apps/ad/util/zip/ZipEntry.class  

  inflating: appsutil/java/oracle/apps/ad/util/zip/ZipFile.class  

  inflating: appsutil/java/oracle/apps/ad/util/zip/ZipFileInputStream.class  

  inflating: appsutil/java/oracle/apps/ad/util/zip/ZipOutputStream.class  

  inflating: appsutil/java/oracle/apps/ad/util/FileDiff$DiffLine.class  

  inflating: appsutil/java/oracle/apps/ad/util/FileDiff.class  

  inflating: appsutil/java/oracle/apps/ad/util/FileUnzip.class  

  inflating: appsutil/java/oracle/apps/ad/util/FileZip.class  

  inflating: appsutil/java/oracle/apps/ad/util/HtmlUtils.class  

  inflating: appsutil/java/oracle/apps/ad/util/IniFile$IniPair.class  

  inflating: appsutil/java/oracle/apps/ad/util/IniFile$IniSection.class  

  inflating: appsutil/java/oracle/apps/ad/util/IniFile.class  

  inflating: appsutil/java/oracle/apps/ad/util/LogFile.class  

  inflating: appsutil/java/oracle/apps/ad/util/MessageHandler.class  

  inflating: appsutil/java/oracle/apps/ad/util/MessageParser$OAVarParser.class  

  inflating: appsutil/java/oracle/apps/ad/util/MessageParser.class  

  inflating: appsutil/java/oracle/apps/ad/util/MessageResourceBundle.class  

  inflating: appsutil/java/oracle/apps/ad/util/OHSUtil.class  

  inflating: appsutil/java/oracle/apps/ad/util/OSPatchCheck.class  

  inflating: appsutil/java/oracle/apps/ad/util/ObfuscatePassword.class  

  inflating: appsutil/java/oracle/apps/ad/util/OptionParser.class  

  inflating: appsutil/java/oracle/apps/ad/util/PortPool$Port.class  

  inflating: appsutil/java/oracle/apps/ad/util/PortPool.class  

  inflating: appsutil/java/oracle/apps/ad/util/PrepZip.class  

  inflating: appsutil/java/oracle/apps/ad/util/ProgramArgumentEnumeration.class  

  inflating: appsutil/java/oracle/apps/ad/util/ProgramArgumentEnumeration_Test.class  

  inflating: appsutil/java/oracle/apps/ad/util/ProvisionerUtil.class  

  inflating: appsutil/java/oracle/apps/ad/util/RACUtil.class  

  inflating: appsutil/java/oracle/apps/ad/util/RecordSet.class  

  inflating: appsutil/java/oracle/apps/ad/util/RemoteProcessCtrl.class  

  inflating: appsutil/java/oracle/apps/ad/util/ACUtil.class  

  inflating: appsutil/java/oracle/apps/ad/util/ADMessageList.class  

  inflating: appsutil/java/oracle/apps/ad/util/RemoteProcessExecutor.class  

  inflating: appsutil/java/oracle/apps/ad/util/RemoteProcessResult.class  

  inflating: appsutil/java/oracle/apps/ad/util/SortList.class  

  inflating: appsutil/java/oracle/apps/ad/util/StreamTokenizeUtils.class  

  inflating: appsutil/java/oracle/apps/ad/util/SystemCheck.class  

  inflating: appsutil/java/oracle/apps/ad/util/TNSParser.class  

  inflating: appsutil/java/oracle/apps/ad/util/TimedProcess$AsyncStreamReader.class  

  inflating: appsutil/java/oracle/apps/ad/util/TimedProcess$TimedProcessProcess.class  

  inflating: appsutil/java/oracle/apps/ad/util/TimedProcess$TimedProcessTimer.class  

  inflating: appsutil/java/oracle/apps/ad/util/TimedProcess.class  

  inflating: appsutil/java/oracle/apps/ad/util/UpdateEBSDomain$ParamAnnotation.class  

  inflating: appsutil/java/oracle/apps/ad/util/UpdateEBSDomain.class  

  inflating: appsutil/java/oracle/apps/ad/util/ContextUtil$1.class  

  inflating: appsutil/java/oracle/apps/ad/util/ContextUtil$ContextVarInfo.class  

  inflating: appsutil/java/oracle/apps/ad/util/ContextUtil$ProdTop.class  

  inflating: appsutil/java/oracle/apps/ad/util/ContextUtil$TemplateInfo.class  

  inflating: appsutil/java/oracle/apps/ad/util/ContextUtil.class  

  inflating: appsutil/java/oracle/apps/ad/util/CustomProductEntryManager.class  

  inflating: appsutil/java/oracle/apps/ad/util/DBUtil.class  

  inflating: appsutil/java/oracle/apps/ad/util/FileCopy.class  

  inflating: appsutil/java/oracle/apps/ad/util/ADOPValidations$ETCHostsElements.class  

  inflating: appsutil/java/oracle/apps/ad/util/ADOPValidations$ParamAnnotation.class  

  inflating: appsutil/java/oracle/apps/ad/util/ADOPValidations.class  

  inflating: appsutil/java/oracle/apps/ad/util/AppStartupPropertyListener.class  

  inflating: appsutil/java/oracle/apps/ad/util/ArrayEnumeration.class  

  inflating: appsutil/java/oracle/apps/ad/util/ContextFileManager$UpdateContextFile.class  

  inflating: appsutil/java/oracle/apps/ad/util/ContextFileManager.class  

  inflating: appsutil/java/oracle/apps/ad/util/FileDiff$DiffColors.class  

  inflating: appsutil/java/oracle/apps/ad/util/FileDiff$DiffFile.class  

  inflating: appsutil/java/oracle/apps/ad/util/VersionCompare.class  

  inflating: appsutil/java/oracle/apps/ad/util/WLSACMapUtil.class  

  inflating: appsutil/java/oracle/apps/ad/util/WLSListener.class  

  inflating: appsutil/java/oracle/apps/ad/util/WLUtil.class  

   creating: appsutil/java/oracle/apps/fnd/

   creating: appsutil/java/oracle/apps/fnd/txk/

   creating: appsutil/java/oracle/apps/fnd/txk/healthcheck/

   creating: appsutil/java/oracle/apps/fnd/txk/healthcheck/xmlrep/

  inflating: appsutil/java/oracle/apps/fnd/txk/healthcheck/xmlrep/HealthCheckXmlParser$1.class  

  inflating: appsutil/java/oracle/apps/fnd/txk/healthcheck/xmlrep/HealthCheckXmlParser$HealthCheckVO.class  

  inflating: appsutil/java/oracle/apps/fnd/txk/healthcheck/xmlrep/HealthCheckXmlParser$HealthComponentItem.class  

  inflating: appsutil/java/oracle/apps/fnd/txk/healthcheck/xmlrep/HealthCheckXmlParser.class  

  inflating: appsutil/java/oracle/apps/fnd/txk/healthcheck/xmlrep/TxkHealthRepPatchVO.class  

   creating: appsutil/java/oracle/apps/fnd/txk/healthcheck/collector/

  inflating: appsutil/java/oracle/apps/fnd/txk/healthcheck/collector/HealthReportSnapshotCollector.class  

   creating: appsutil/java/oracle/apps/fnd/txk/healthcheck/util/

  inflating: appsutil/java/oracle/apps/fnd/txk/healthcheck/util/PatchDownload.class  

   creating: appsutil/media/

  inflating: appsutil/media/FNDSSCORP.gif  

  inflating: appsutil/media/eyeglasses_transparent.gif  

  inflating: appsutil/media/chsd.gif  

  inflating: appsutil/media/chsu.gif  

  inflating: appsutil/txkSetCfgCDB.env  

  inflating: appsutil/txkSetCfgCDB.cmd 

 

10.12      Install JRE 8

Source 19c environment

To install JRE 8 on the appsutil directory, copy the $ORACLE_HOME/jdk/jre directory to $ORACLE_HOME/appsutil/jre. Run the following commands:

[oracle@fbsebs 19c]$ cd $ORACLE_HOME/appsutil

[oracle@fbsebs appsutil]$ cp -r $ORACLE_HOME/jdk/jre .

[oracle@fbsebs appsutil]$ cp $ORACLE_HOME/jlib/orai18n.jar $ORACLE_HOME/appsutil/jre/lib/ext

 

10.13      Create the CDB

On the database server node Source 19c environment and run below from GUI Terminal/VNC



  • Run the Database Configuration Assistant (DBCA) to create the container database (CDB).
  • When prompted, click on the "Create Database", "Advanced Configuration", and "General Purpose or Transaction Processing" options.
  • In the Specify Database Identification screen, check to create an empty container database (CDB) without a PDB.
  • Set the Global Database Name, the SID to the new CDB SID (maximum of 8 characters)(fbscdb), and check the "Use Local Undo tablespace for PDBs" checkbox. The CDB SID has to be different from the current ORACLE_SID, which will be the PDB SID.
  • In the "Network Configuration" section, do not create a listener. In the "Specify Configuration Options" section, set the SGA and PGA sizes to 2G and 1G respectively.
  • Click on the Character Sets tab and choose the Character Set and National Character Set to be the same as in the source database.
  • In the "Select Database Creation Option" section, click on the "Customize Storage Locations" button. Set the size of the redo log files to be the same as in the source database. Other options can be configured as appropriate.

[oracle@fbsebs 19c]$ . 19cdb.env 

[oracle@fbsebs 19c]$ cd $ORACLE_HOME/bin

[oracle@fbsebs bin]$ export _JAVA_OPTIONS='-Dsun.java2d.xrender=false'

[oracle@fbsebs bin]$ 

[oracle@fbsebs bin]$ export CV_ASSUME_DISTID=OEL7.9

[oracle@fbsebs bin]$ ./dbca

 








In case of ASM filesystem the storage will be ASM.













[oracle@fbsebs 12.1.0]$ sqlplus / as sysdba


SQL*Plus: Release 12.1.0.2.0 Production on Fri Dec 20 10:19:07 2024


Copyright (c) 1982, 2014, Oracle.  All rights reserved.



Connected to:

Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production

With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options


SQL> SELECT value AS db_charset FROM nls_database_parameters WHERE parameter = 'NLS_CHARACTERSET';


DB_CHARSET

--------------------------------------------------------------------------------

AL32UTF8


SSQL> SELECT value AS db_ncharset FROM nls_database_parameters WHERE parameter = 'NLS_NCHAR_CHARACTERSET';


DB_NCHARSET

--------------------------------------------------------------------------------

AL16UTF16

 














CDB database should be running now.

[oracle@fbsebs bin]$ ps -ef |grep -i pmon

oracle      3432    2611  0 08:57 ?        00:00:00 ora_pmon_FBS

oracle     37215    2611  0 11:15 ?        00:00:00 ora_pmon_cdbfbs

oracle     37673   30161  0 11:17 pts/2    00:00:00 grep --color=auto -i pmon

10.14      Run datapatch on the CDB

 

Use the following commands to load any necessary patches on the CDB.

Source 19 environment

[oracle@fbsebs 19c]$ . 19cdb.env 

[oracle@fbsebs 19c]$ export ORACLE_SID=cdbfbs

[oracle@fbsebs 19c]$ $ORACLE_HOME/OPatch/datapatch

SQL Patching tool version 19.24.0.0.0 Production on Fri Dec 20 11:18:39 2024

Copyright (c) 2012, 2024, Oracle.  All rights reserved.


Log file for this invocation: /u01/app/FBS/db/cfgtoollogs/sqlpatch/sqlpatch_37736_2024_12_20_11_18_39/sqlpatch_invocation.log


Connecting to database...OK

Gathering database info...done


Note:  Datapatch will only apply or rollback SQL fixes for PDBs

       that are in an open state, no patches will be applied to closed PDBs.

       Please refer to Note: Datapatch: Database 12c Post Patch SQL Automation

       (Doc ID 1585822.1)


Bootstrapping registry and package to current versions...done

Determining current state...done


Current state of interim SQL patches:

Interim patch 36414915 (OJVM RELEASE UPDATE: 19.24.0.0.240716 (36414915)):

  Binary registry: Installed

  PDB CDB$ROOT: Applied successfully on 20-DEC-24 10.48.11.078243 AM

  PDB PDB$SEED: Applied successfully on 20-DEC-24 11.07.06.505976 AM


Current state of release update SQL patches:

  Binary registry:

    19.24.0.0.0 Release_Update 240627235157: Installed

  PDB CDB$ROOT:

    Applied 19.24.0.0.0 Release_Update 240627235157 successfully on 20-DEC-24 10.58.11.358896 AM

  PDB PDB$SEED:

    Applied 19.24.0.0.0 Release_Update 240627235157 successfully on 20-DEC-24 11.13.07.880473 AM


Adding patches to installation queue and performing prereq checks...done

Installation queue:

  For the following PDBs: CDB$ROOT PDB$SEED

    No interim patches need to be rolled back

    No release update patches need to be installed

    No interim patches need to be applied


SQL Patching tool complete on Fri Dec 20 11:19:03 2024

10.15      Create the CDB MGDSYS schema

Source 19c Environment

Use SQL*Plus to connect to the CDB as SYSDBA and run the

[oracle@fbsebs 19c]$ export ORACLE_SID=cdbfbs

[oracle@fbsebs 19c]$ sqlplus / as sysdba


SQL*Plus: Release 19.0.0.0.0 - Production on Fri Dec 20 11:20:08 2024

Version 19.24.0.0.0


Copyright (c) 1982, 2024, Oracle.  All rights reserved.



Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.24.0.0.0

 

SQL>

SQL> @$ORACLE_HOME/rdbms/admin/catmgd.sql

This creates the new MGDSYS schema on the CDB.

 

10.16      1Create the CDB TNS files

On the database server node, run the following perl script to generate the required TNS files. Note that this script does not create a listener.

Source 19c Environment file

$ cd $ORACLE_HOME/appsutil

$ . ./txkSetCfgCDB.env dboraclehome=<full path of ORACLE_HOME>

$ cd $ORACLE_HOME/appsutil/bin

$ perl txkGenCDBTnsAdmin.pl -dboraclehome=<ORACLE_HOME> \

-cdbname=<CDB SID> -cdbsid=<CDB SID> -dbport=<Database port> \

-outdir=<ORACLE_HOME>/appsutil/log


[oracle@fbsebs 19c]$ cd $ORACLE_HOME/appsutil

[oracle@fbsebs appsutil]$ . ./txkSetCfgCDB.env dboraclehome=$ORACLE_HOME


Oracle Home being passed: /u01/app/FBS/db/tech_st/19c

[oracle@fbsebs appsutil]$ cd $ORACLE_HOME/appsutil/bin

[oracle@fbsebs bin]$ perl txkGenCDBTnsAdmin.pl -dboraclehome=$ORACLE_HOME -cdbname=cdbfbs -cdbsid=cdbfbs -dbport=1531 -outdir=$ORACLE_HOME/appsutil/log



Script Name    : txkGenCDBTnsAdmin.pl

Script Version : 120.0.12020000.12

Started        : Fri Dec 20 11:23:17 EAT 2024


Log File       : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CDB_TNS_ADMIN_Fri_Dec_20_11_23_17_2024/txkGenCDBTnsAdmin.log



-----------

Values used

-----------

Database Oracle Home    : /u01/app/FBS/db/tech_st/19c

CDB NAME                : cdbfbs

CDB SID                 : cdbfbs

Database port           : 1531

OUT Directory           : /u01/app/FBS/db/tech_st/19c/appsutil/log

Is RAC?                 : No

Virtual Hostname        : 

Logical Hostname        : 

Script execution mode   : generate





=========================

Validating oracle home...

=========================

Oracle Home: /u01/app/FBS/db/tech_st/19c exists.



===========================

Validating out directory...

===========================

Out directory: /u01/app/FBS/db/tech_st/19c/appsutil/log exists.



===================================

Validating script execution mode...

===================================



Script execution mode: generate

Script execution mode is valid.



============================

Inside getDBHostDetails()...

============================

DB Hostname : fbsebs

DB Domain   : finsys.co.ke

Logical hostname is not passed, hence using physical hostname details.

Logical Hostname : fbsebs

Logical Domain   : finsys.co.ke



=====================

Inside getDBPort()...

=====================

DB Port passed as an argument, using the same.

DB Port: 1531



========================

Inside getDBVersion()...

========================

DB_VERSION = db190




======================================

Inside generateCDBTNSAdminContent()...

======================================

Creating the directory: /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CDB_TNS_ADMIN_Fri_Dec_20_11_23_17_2024/tns_admin_cdb_bkp

Creating the directory: /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CDB_TNS_ADMIN_Fri_Dec_20_11_23_17_2024/tns_admin_cdb_temp

listener_template: listener_ora_cdb_db19.tmp

sqlnet_template: sqlnet_ora_cdb_db19.tmp



Copying the file

----------------

SOURCE : /u01/app/FBS/db/tech_st/19c/appsutil/template/listener_ora_cdb_db19.tmp

TARGET : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CDB_TNS_ADMIN_Fri_Dec_20_11_23_17_2024/tns_admin_cdb_temp/listener.ora



===================================

Inside replaceContextVariables()...

===================================

File /u01/app/FBS/db/tech_st/19c/network/admin/listener.ora does not exist.



Copying the file

----------------

SOURCE : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CDB_TNS_ADMIN_Fri_Dec_20_11_23_17_2024/tns_admin_cdb_temp/listener.ora

TARGET : /u01/app/FBS/db/tech_st/19c/network/admin/listener.ora





Copying the file

----------------

SOURCE : /u01/app/FBS/db/tech_st/19c/appsutil/template/tnsnames_ora_cdb_db121.tmp

TARGET : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CDB_TNS_ADMIN_Fri_Dec_20_11_23_17_2024/tns_admin_cdb_temp/tnsnames.ora



===================================

Inside replaceContextVariables()...

===================================

File /u01/app/FBS/db/tech_st/19c/network/admin/tnsnames.ora does not exist.



Copying the file

----------------

SOURCE : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CDB_TNS_ADMIN_Fri_Dec_20_11_23_17_2024/tns_admin_cdb_temp/tnsnames.ora

TARGET : /u01/app/FBS/db/tech_st/19c/network/admin/tnsnames.ora





Copying the file

----------------

SOURCE : /u01/app/FBS/db/tech_st/19c/appsutil/template/sqlnet_ora_cdb_db19.tmp

TARGET : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CDB_TNS_ADMIN_Fri_Dec_20_11_23_17_2024/tns_admin_cdb_temp/sqlnet.ora



===================================

Inside replaceContextVariables()...

===================================

File /u01/app/FBS/db/tech_st/19c/network/admin/sqlnet.ora does not exist.



Copying the file

----------------

SOURCE : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CDB_TNS_ADMIN_Fri_Dec_20_11_23_17_2024/tns_admin_cdb_temp/sqlnet.ora

TARGET : /u01/app/FBS/db/tech_st/19c/network/admin/sqlnet.ora





==============================

Inside updateCDBSqlNetOra()...

==============================

Updating the IFILE entry...






Exiting from the script.

Ended: Fri Dec 20 11:23:17 EAT 2024



10.17      Shut down the CDB



Source 19c environment



Use SQL*Plus to connect to the CDB as SYSDBA and use the following command to shut down the database:

[oracle@fbsebs bin]$ sqlplus / as sysdba


SQL*Plus: Release 19.0.0.0.0 - Production on Fri Dec 20 11:24:39 2024

Version 19.24.0.0.0


Copyright (c) 1982, 2024, Oracle.  All rights reserved.



Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.24.0.0.0


SQL> shu immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

 

10.18      On Application Tier

 

Complete patching cycle and remove adop created editions

 This will clean up the editions created by previous adop patching cycles. These commands also complete any open patching cycle.

On the current run file system:

[applmgr@fbsebs ~]$ adop phase=prepare 

[applmgr@fbsebs ~]$ adop phase=actualize_all    --> This alone took apporx 13hrs to complete

[applmgr@fbsebs ~]$ adop phase=finalize finalize_mode=full 

[applmgr@fbsebs ~]$ adop phase=cutover mtrestart=no 

Source the new Environment

On the new run file system:

[applmgr@fbsebs ~]$ adop phase=cleanup cleanup_mode=full --> This alone took apporx 18hrs to complete

These maintenance operations will take much longer than a typical online patching cycle, and should only be performed when there is no immediate need to start a new online patching cycle.

The applications will be unavailable to users until all remaining tasks are completed.

10.19      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)

We need to run the txkCfgUtlfileDir.pl script twice in different modes to complete this task. First you run the script in getUtlFileDir mode to retrieve the directory paths formerly specified in the UTL_FILE_DIR database initialization parameter and prepare them for the upgrade. Then you run the script in setUtlFileDir mode to store the directory paths in the new Oracle E-Business Suite tables underlying the apps.v$parameter and apps.v$parameter2 views and to create the corresponding directory objects.

To retrieve the directory path values from the source UTL_FILE_DIR database initialization parameter:



Source the Oracle E-Business Suite database environment of your 11g or 12c Oracle home.


[applmgr@fbsebs ~]$ . /u01/app/FBS/db/tech_st/12.1.0/FBS_fbsebs.env


Run the txkCfgUtlfileDir.pl script in getUtlFileDir mode using the following command:



$ perl $ORACLE_HOME/appsutil/bin/txkCfgUtlfileDir.pl -contextfile=<DB Context File> \

-oraclehome=<11g/12c ORACLE_HOME> -outdir=<Output/Log location> \

-upgradedhome=<19c ORACLE_HOME> -mode=getUtlFileDir -servicetype=onpremise|opc



[oracle@fbsebs appsutil]$ perl $ORACLE_HOME/appsutil/bin/txkCfgUtlfileDir.pl -contextfile=/u01/app/FBS/db/tech_st/12.1.0/appsutil/FBS_fbsebs.xml -oraclehome=/u01/app/FBS/db/tech_st/12.1.0 -outdir=/tmp -upgradedhome=/u01/app/FBS/db/tech_st/19c  -mode=getUtlFileDir -servicetype=onpremise

Enter the APPS Password: 



Script Name    : txkCfgUtlfileDir.pl

Script Version : 120.0.12020000.31

Started        : Sun Dec 22 09:08:22 EAT 2024


Log File       : /tmp/TXK_UTIL_DIR_Sun_Dec_22_09_08_19_2024/txkCfgUtlfileDir.log


Context file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/FBS_fbsebs.xml exists.


==============================================================================


Successfully generated the below file with UTL_FILE_DIR content:

/u01/app/FBS/db/tech_st/12.1.0/dbs/FBS_utlfiledir.txt


==============================================================================



Completed        : Sun Dec 22 09:08:23 EAT 2024



Successfully Completed the script

ERRORCODE = 0 ERRORCODE_END




With this command, the script retrieves the directory paths stored in the UTL_FILE_DIR database initialization parameter, modifies them to prepare them for use in Oracle Database 19c, and creates a text file named <DB_NAME>_utlfiledir.txt in the <ORACLE_HOME>/dbs directory with the list of modified directory paths. The -servicetype parameter defaults to -servicetype=onpremise, but when running on Oracle Cloud, you must specify -servicetype=opc for this parameter. The script performs the following modifications in the directory paths:



For on-premises instances, any occurrences of the path /usr/tmp for UNIX/Linux, or C:\temp for Windows, are replaced with <19c ORACLE_BASE>/temp/<PDB_NAME>, where <PDB_NAME> is the pluggable database (PDB) name.



For Oracle Cloud instances, any occurrences of the path /usr/tmp are replaced with <19c ORACLE_HOME>/temp/<PDB_NAME>, where <PDB_NAME> is the pluggable database (PDB) name.



For both on-premises and Oracle Cloud instances, any occurrences of the 11g or 12c Oracle home within a directory path are replaced with the 19c Oracle home. For example, the following directory path:



<11g/12c ORACLE_HOME>/appsutil/outbound/<context_name>

is changed to the following new directory path:



<19c ORACLE_HOME/appsutil/outbound/<context name>

The script also stores the original values from the 11g or 12c UTL_FILE_DIR database initialization parameter as well as the 19c replacement values in a text file in the log directory. You can compare the log file with the <DB_NAME>_utlfiledir.txt file in the <ORACLE_HOME>/dbs directory to review the modifications made by the script.



If the list of directories in the <DB_NAME>_utlfiledir.txt file still includes any symbolic links, edit the file to replace the symbolic links with physical directory paths. You can also make any further updates needed to reflect any changes in your system architecture.



Note: The maximum length for the value of the supplemental UTL_FILE_DIR parameter is 4000 characters. Due to modifications in the directory paths for use in Oracle Database 19c, the UTL_FILE_DIR value prepared for Oracle Database 19c can become longer than the original value for the UTL_FILE_DIR parameter in Oracle Database 11g or 12c. Check the <DB_NAME>_utlfiledir.txt file to verify the length of the list of directory paths.



If the list exceeds 4000 characters, review the directory paths in the list and consider deleting any directories that are no longer in use or removing duplicate directories. However, note that Oracle E-Business Suite product code or your custom code may refer to a directory path at a specific position within the UTL_FILE_DIR parameter value, such as by a SQL substr(), instr(), or similar function. Before removing a directory, you should search your code and system documentation to ensure there are no references to that directory by position. Additionally, you should search for any references to all subsequent directories in the list, whose position would be affected if you remove a directory that precedes them.



Alternatively you can consider restructuring the disk system to create shorter directory paths.



To store the directory path values in the database:



Create the following directory paths:



<19c Oracle Base>/temp/<PDB NAME> - for on-premises instances

<19c Oracle Home>/temp/<PDB NAME> - for instances on Oracle Cloud

<19c ORACLE_HOME>/appsutil/outbound/<context name> - for both on-premises and Oracle Cloud instances

 

[oracle@fbsebs 12.1.0]$ cd dbs

[oracle@fbsebs dbs]$ cat FBS_utlfiledir.txt 

#############################################################################

#         This file stores the UTL FILE DIR parameter values used           #

#                    by various EBS product teams                           #

#                                                                           #

#       ***** DO NOT CHANGE THE NAME OR LOCATION OF THIS FILE *****         #

#                                                                           #

# IMPORTANT NOTES:                                                          #

# ================                                                          #

#                                                                           #

# 1. OS path should not be a symbolic link                                  #

#                                                                           #

# 2. OS path given in the list should physically exist with proper          #

#    permissions                                                            #

#                                                                           #

# 3. OS path /usr/tmp which generally is a symbolic link is replaced with   #

#    <ORACLE_BASE>/temp/<PDB_NAME>                                          #

#                                                                           #

#    Make sure that OS path <ORACLE_BASE>/temp/<PDB_NAME> exists            #

#                                                                           #

# 4. <APPLPTMP> variable on Apps Tier should match with one of the OS paths #

#    in the list. Otherwise you need to modify <APPLPTMP> on all Apps tiers #

#    and run Autoconfig                                                     #

#                                                                           #

# 5. Ensure that all the paths defined in this file exist physically on the #

#    server                                                                 #

#                                                                           #

# 6. Maximum allowed length of UTL_FILE_DIR parameter (combined length of   #

#    all paths separated by commas) is 4000 characters, hence ensure that   #

#    value does not exceed the limit                                        #

#                                                                           #

# 6. If the script is being executed as a part of UPGRADE FLOW, note that   #

#    all the references to <Old Oracle Home> in UTL_FILE_DIR are replaced   #

#    with <Upgraded Oracle Home>                                            #

#                                                                           #

#===========================================================================#

# For reference, original contents of UTL_FILE_DIR without any updates are  #

# retained in below file:                                                   #

#                                                                           #

# /tmp/TXK_UTIL_DIR_Sun_Dec_22_09_20_25_2024/FBS_utlfiledir.txt

#############################################################################



/u01/app/FBS/db/tech_st/temp/FBS

/u01/app/FBS/db/tech_st/temp/FBS

/u01/app/FBS/db/tech_st/19c/appsutil/outbound/FBS_fbsebs

/u01/app/FBS/db/tech_st/temp/FBS





Based on path check and create the directories on server using oracle user

[oracle@fbsebs appsutil]$ mkdir -p /u01/app/FBS/db/tech_st/19c/appsutil/outbound/FBS_fbsebs

[oracle@fbsebs appsutil]$ mkdir -p /u01/app/FBS/db/tech_st/temp/FBS




Source the Oracle E-Business Suite database environment of your 11g or 12c Oracle home.



$ . $ORACLE_HOME/<sid>_<hostname>.env

Run the txkCfgUtlfileDir.pl script in setUtlFileDir mode using the following command:



$ perl $ORACLE_HOME/appsutil/bin/txkCfgUtlfileDir.pl -contextfile=<DB Context File> \

-oraclehome=<11g/12c ORACLE_HOME> -outdir=<Output/Log location> \

-upgradedhome=<19c ORACLE_HOME> -mode=setUtlFileDir -servicetype=onpremise|opc [ -skipdirvalidation=Yes ]



[oracle@fbsebs appsutil]$ perl $ORACLE_HOME/appsutil/bin/txkCfgUtlfileDir.pl -contextfile=/u01/app/FBS/db/tech_st/12.1.0/appsutil/FBS_fbsebs.xml -oraclehome=/u01/app/FBS/db/tech_st/12.1.0 -outdir=/tmp -upgradedhome=/u01/app/FBS/db/tech_st/19c  -mode=setUtlFileDir -servicetype=onpremise

Enter the APPS Password: 



Script Name    : txkCfgUtlfileDir.pl

Script Version : 120.0.12020000.31

Started        : Sun Dec 22 09:24:50 EAT 2024


Log File       : /tmp/TXK_UTIL_DIR_Sun_Dec_22_09_24_47_2024/txkCfgUtlfileDir.log


Context file: /u01/app/FBS/db/tech_st/12.1.0/appsutil/FBS_fbsebs.xml exists.



Enter the ebs_system Password: 




Completed        : Sun Dec 22 09:24:57 EAT 2024



Successfully Completed the script

ERRORCODE = 0 ERRORCODE_END




When prompted, if your environment is on R12.TXK.C.Delta.13 or later, enter the password for the EBS_SYSTEM user. If your environment is on R12.TXK.C.Delta.12 or earlier, enter the password for the SYSTEM user.



With this command, the script reads the <ORACLE_HOME>/dbs/<DB_NAME>_utlfiledir.txt file that you created previously and validates the physical directory paths listed in that file. If you are creating your Oracle Database 19c instance on a different server and cannot validate the 19c Oracle home directory, then you should pass the -skipdirvalidation=Yes parameter in the txkCfgUtlfileDir.pl script command. The -servicetype parameter defaults to -servicetype=onpremise, but when running on Oracle Cloud, you must specify -servicetype=opc for this parameter.



After validating the directory paths, the script stores the paths for the supplemental UTL_FILE_DIR parameter in the new Oracle E-Business Suite tables underlying the apps.v$parameter and apps.v$parameter2 views.



The txkCfgUtlfileDir.pl script also creates a directory object for each physical directory path. Note that the script creates only one directory object for each directory path; it does not create duplicate directory objects, even if a directory path appears more than once in the <DB_NAME>_utlfiledir.txt file. The first directory object that is generated is named EBS_DB_DIR_UTIL. The script uses the following naming convention for all subsequent directory objects:  EBS_UTL_FILE_DIR_<random_number>



Note: If you encounter the following warning message:



WARNING: Incorrect value s_applptmp detected on Apps Tier nodes. Please check log for details.



then you can proceed with the database upgrade. However, you should update the value of the s_applptmp AutoConfig parameter in the Applications context file before running AutoConfig on the application tier.



10.20      Shut down the application tier server processes



On each application tier server node, shut down all server processes or services. The applications will be unavailable to users until all remaining tasks in this section are completed.



This should be already down based on pervious adop cycle steps.





10.21      Drop SYS.ENABLED$INDEXES



Source 12c DB environment

If the SYS.ENABLED$INDEXES table exists, connect to the database as SYSDBA, and run the following command to drop the table:



[oracle@fbsebs appsutil]$ sqlplus / as sysdba


SQL*Plus: Release 12.1.0.2.0 Production on Sun Dec 22 09:27:04 2024


Copyright (c) 1982, 2014, Oracle.  All rights reserved.



Connected to:

Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production

With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options


SQL> drop table sys.enabled$indexes;

drop table sys.enabled$indexes

               *

ERROR at line 1:

ORA-00942: table or view does not exist


If the table doe not exists then it's fine.

10.22      Remove the MGDSYS schema(Conditional) (Not needed for us as we are on 12c DB)


If you are upgrading from a database version prior to Oracle 12c, log on to the old database server node, use SQL*Plus to connect to the database as SYSDBA, and run the $ORACLE_HOME/md/admin/catnomgdidcode.sql script. This drops the MGDSYS schema.

[oracle@fbsebs appsutil]$ sqlplus "/ as sysdba" @?/md/admin/catnomgdidcode.sql


10.23      Shut down the database listener



Source 12c Environment



On the database tier server node, shut down the Oracle Net or Net8 database listener in the old Oracle home.



[oracle@fbsebs appsutil]$ lsnrctl stop FBS


LSNRCTL for Linux: Version 12.1.0.2.0 - Production on 22-DEC-2024 09:29:48


Copyright (c) 1991, 2014, Oracle.  All rights reserved.


Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=fbsebs.finsys.co.ke)(PORT=1531)))

The command completed successfully




Note: To ensure that the database does not inadvertently point to a non-existent listener during the upgrade, verify that you do not have the LOCAL_LISTENER initialization parameter set.



SQL> alter system set local_listener='';


System altered.



10.24      Database Pre-Upgrade Steps



Important Check:



  • Ensure that the oratab file contains an entry for the database to be upgraded.

 

Modify the following initialization parameters before the upgrade:

 

  • Comment out all the deprecated initialization parameters. Any necessary parameter will be added back in after the upgrade.
  • Unset the olap_page_pool_size initialization parameter.

 

SQL> alter system set  olap_page_pool_size=0 scope=spfile;


System altered.

 

  • If you have an 11g source database, set the PGA_AGGREGATE_TARGET initialization parameter to at least 10G.
  • Set the SGA_TARGET initialization parameter to at least 2G.
  • Add the event EVENT='10946 trace name context forever, level 8454144'

 

SQL> alter system set event='10946 trace name context forever, level 8454144' scope=spfile;


System altered.

 

Shut down and restart the database to enable the parameters.



Source 12c Environment

Run the Pre-upgrade Tool:

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

[oracle@fbsebs appsutil]$ $ORACLE_HOME/jdk/bin/java -jar /u01/app/FBS/db/tech_st/19c/rdbms/admin/preupgrade.jar TERMINAL TEXT

Report generated by Oracle Database Pre-Upgrade Information Tool Version

19.0.0.0.0 Build: 13 on 2024-12-22T09:32:48


Upgrade-To version: 19.0.0.0.0


=======================================

Status of the database prior to upgrade

=======================================

      Database Name:  FBS

     Container Name:  FBS

       Container ID:  0

            Version:  12.1.0.2.0

     DB Patch Level:  No Patch Bundle applied

         Compatible:  12.1.0

          Blocksize:  8192

           Platform:  Linux x86 64-bit

      Timezone File:  18

  Database log mode:  NOARCHIVELOG

           Readonly:  FALSE

            Edition:  EE


  Oracle Component                       Upgrade Action    Current Status

  ----------------                       --------------    --------------

  Oracle Server                          [to be upgraded]  VALID         

  JServer JAVA Virtual Machine           [to be upgraded]  VALID         

  Oracle XDK for Java                    [to be upgraded]  VALID         

  Real Application Clusters              [to be upgraded]  OPTION OFF    

  OLAP Analytic Workspace                [to be upgraded]  VALID         

  Oracle Text                            [to be upgraded]  VALID         

  Oracle XML Database                    [to be upgraded]  VALID         

  Oracle Java Packages                   [to be upgraded]  VALID         

  Oracle Multimedia                      [to be upgraded]  VALID         

  Oracle Spatial                         [to be upgraded]  VALID         

  Oracle OLAP API                        [to be upgraded]  VALID         


==============

BEFORE UPGRADE

==============


  REQUIRED ACTIONS

  ================

  None


  RECOMMENDED ACTIONS

  ===================

  1.  Remove initialization parameters that Oracle has obsoleted or removed. 

      This action may be done now or when starting the database in upgrade mode

      using the target ORACLE HOME.

      

      Parameter

      ---------

      optimizer_adaptive_features                                 

      utl_file_dir                                                

      

      If parameters that are obsolete or removed from the target release are

      present in the pfile/spfile, the Oracle database may not start, or it may

      start with an ORA- error.


  2.  Run 12.1.0.2.0 $ORACLE_HOME/rdbms/admin/utlrp.sql to recompile invalid

      objects.  You can view the individual invalid objects with

      

        SET SERVEROUTPUT ON;

        EXECUTE DBMS_PREUP.INVALID_OBJECTS;

      

      158 objects are INVALID.

      

      There should be no INVALID objects in SYS/SYSTEM or user schemas before

      database upgrade.


  3.  Remove OLAP Catalog by running the 12.1.0.2.0 SQL script

      $ORACLE_HOME/olap/admin/catnoamd.sql script.

      

      The OLAP Catalog component, AMD, exists in the database.

      

      Starting with Oracle Database 12c, the OLAP Catalog (OLAP AMD) is

      desupported and will be automatically marked as OPTION OFF during the

      database upgrade if present. Oracle recommends removing OLAP Catalog

      (OLAP AMD) before database upgrade.  This step can be manually performed

      before the upgrade to reduce downtime.


  4.  To remove duplicate objects, refer to Doc ID 1030426.6.

      To query for these duplicates owned by both SYS and SYSTEM, run:

        SELECT object_name, object_type

        FROM dba_objects

        WHERE object_name||'_'||object_type IN

          (SELECT object_name||'_'||object_type

           FROM dba_objects WHERE owner = 'SYS')

         AND owner = 'SYSTEM' AND object_name NOT IN ('AQ$_SCHEDULES',

          'AQ$_SCHEDULES_PRIMARY','DBMS_REPCAT_AUTH','DBMS_REPCAT_AUTH');

      

      There exists in the database duplicate object(s) that are owned by both

      SYS and SYSTEM.

      

      If an install script had been run as both SYS and SYSTEM, then it is

      possible to have duplicate objects (with same object names and types)

      owned by both of these Oracle users.


  5.  Perform one of the following:

       1) Expire user accounts that use only the old 10G password version and

      follow the procedure recommended in Oracle Database Upgrade Guide under

      the section entitled, "Checking for Accounts Using Case-Insensitive

      Password Version".

       2) Explicitly set SQLNET.ALLOWED_LOGON_VERSION_SERVER in the 19

      SQLNET.ORA to a non-Exclusive Mode value, such as "11". (This is a short

      term approach and is not recommended because it will retain known

      security risks associated with the 10G password version.)

      

      Your database system has at least one account with only the 10G password

      version (see the PASSWORD_VERSIONS column of DBA_USERS).

      

      Starting with Oracle Database release 12.2.0.1, Exclusive Mode is the new

      default password-based authentication mode. All Exclusive Mode

      login/authentication attempts will fail for preexisting user accounts

      which only have the 10G password version and neither the 11G or 12C

      password version (see DBA_USERS.PASSWORD_VERSIONS.) For more information,

      refer to "Understanding Password Case Sensitivity and Upgrades" in the

      Oracle Database Upgrade Guide.


  6.  Set OLAP_PAGE_POOL_SIZE in the pfile/spfile to 0 before the upgrade, or

      remove the setting entirely and accept the Oracle default.

      

      The OLAP_PAGE_POOL_SIZE parameter is set to a non-zero value.  This will

      cause OLAP to allocate that amount of  memory for each OLAP user, and may

      interfere with the upgrade process. 

      

      The OLAP_PAGE_POOL_SIZE initialization parameter controls the size of of

      the OLAP page pool.  Without an explicit setting or with it set to 0,

      OLAP will dynamically resize the pool as needed.  Setting it to a

      non-zero value will cause OLAP to allocate that amount of memory as a

      fixed-size pool, and never resize the pool. Oracle recommends removing

      the parameter from the pfile/spfile.


  7.  Remove the SEC_CASE_SENSITIVE_LOGON instance initialization parameter

      setting, to configure your system to use case sensitive password

      authentication by default.

      

      Your database system is configured to enforce case insensitive password

      authentication (the SEC_CASE_SENSITIVE_LOGON instance initialization

      parameter setting is FALSE).

      

      Starting with Oracle Database release 12.2, Exclusive Mode is the default

      password-based authentication mode. Case insensitive password

      authentication is not supported in Exclusive Mode. If your system needs

      to use case insensitive password authentication, Exclusive Mode must be

      switched off prior to the upgrade. See the Network Reference Manual

      chapter about the SQLNET.ORA parameter

      SQLNET.ALLOWED_LOGON_VERSION_SERVER for more details on Exclusive Mode.


  8.  Please make sure that all the MVs are refreshed and sys.sumdelta$ becomes

      empty before doing upgrade, unless you have strong business reasons not

      to do so. You can use dbms_mview.refresh() to refresh the MVs except

      those stale ones  to be kept due to business need. If there are any stale

      MVs depending on changes in sys.sumdelta$, do not truncate it, because

      doing so will cause wrong results after refresh. Please refer to the

      Materialized View section in MOS Note 2380601.1 for more details.

      

      There are one or more materialized views in either stale or invalid

      state, or which are currently being refreshed.

      

      Oracle recommends that all materialized views (MV's) are refreshed before

      upgrading the database because this will clear the MV logs and the

      sumdelta$ table and may reduce the upgrade time. If you choose to not

      refresh some MVs, the change data for those MV's will be carried through

      the UPGRADE process. After UPGRADE, you can refresh the MV's and  MV

      incremental refresh should work in normal cases.


  9.  Review and remove any unnecessary HIDDEN/UNDERSCORE parameters.

      

      The database contains the following initialization parameters whose name

      begins with an underscore:

      

      _disable_actualization_for_grant

      _system_trig_enabled

      

      Remove hidden parameters before database upgrade unless your application

      vendors and/or Oracle Support state differently.  Changes will need to be

      made in the pfile/spfile.


  10. Review and remove any unnecessary EVENTS.

      

      The database contains events.

      

      There are events set that should be removed before upgrade, unless your

      application vendors and/or Oracle Support state differently.  Changes

      will need to be made in the pfile/spfile.


  11. (AUTOFIXUP) Gather stale data dictionary statistics prior to database

      upgrade in off-peak time using:

      

        EXECUTE DBMS_STATS.GATHER_DICTIONARY_STATS;

      

      Dictionary statistics do not exist or are stale (not up-to-date).

      

      Dictionary statistics help the Oracle optimizer find efficient SQL

      execution plans and are essential for proper upgrade timing. Oracle

      recommends gathering dictionary statistics in the last 24 hours before

      database upgrade.

      

      For information on managing optimizer statistics, refer to the 12.1.0.2

      Oracle Database SQL Tuning Guide.


  INFORMATION ONLY

  ================

  12. Here are ALL the components in this database registry:

      

      Component Current     Current     Original    Previous    Component

      CID       Version     Status      Version     Version     Schema

      --------- ----------- ----------- ----------- ----------- -----------

      AMD       11.1.0.7.0  OPTION OFF  10.2.0.2.0  11.1.0.6.0  OLAPSYS    

      APS       12.1.0.2.0  VALID       9.2.0.5.0   11.1.0.7.0  SYS        

      CATALOG   12.1.0.2.0  VALID       9.2.0.5.0   9.2.0.5.0   SYS        

      CATJAVA   12.1.0.2.0  VALID       9.2.0.5.0   11.1.0.7.0  SYS        

      CATPROC   12.1.0.2.0  VALID       9.2.0.5.0   11.1.0.7.0  SYS        

      CONTEXT   12.1.0.2.0  VALID       9.2.0.5.0   11.1.0.7.0  CTXSYS     

      JAVAVM    12.1.0.2.0  VALID       9.2.0.5.0   11.1.0.7.0  SYS        

      ORDIM     12.1.0.2.0  VALID       9.2.0.5.0   11.1.0.7.0  ORDSYS     

      RAC       12.1.0.2.0  OPTION OFF  9.2.0.5.0   11.1.0.7.0  SYS        

      SDO       12.1.0.2.0  VALID       9.2.0.5.0   11.1.0.7.0  MDSYS      

      XDB       12.1.0.2.0  VALID       10.2.0.1.0  11.1.0.7.0  XDB        

      XML       12.1.0.2.0  VALID       9.2.0.7.0   11.1.0.7.0  SYS        

      XOQ       12.1.0.2.0  VALID       9.2.0.5.0   11.1.0.7.0  SYS        

      

      Review the information before upgrading.


  13. To help you keep track of your tablespace allocations, the following

      AUTOEXTEND tablespaces are expected to successfully EXTEND during the

      upgrade process.

      

                                                 Min Size

      Tablespace                        Size     For Upgrade

      ----------                     ----------  -----------

      SYSAUX                             962 MB      1046 MB

      SYSTEM                              24 GB        24 GB

      

      Minimum tablespace sizes for upgrade are estimates.


  14. Consider removing the following deprecated initialization parameters.

      

      Parameter

      ---------

      sec_case_sensitive_logon                                    

      

      These deprecated parameters probably will be obsolete in a future release.


  15. Check the Oracle Backup and Recovery User's Guide for information on how

      to manage an RMAN recovery catalog schema.

      

      If you are using a version of the recovery catalog schema that is older

      than that required by the RMAN client version, then you must upgrade the

      catalog schema.

      

      It is good practice to have the catalog schema the same or higher version

      than the RMAN client version you are using.


  16. Here is a count of invalid objects by Oracle-maintained users:

      

      Oracle-Maintained User Name                 Number of INVALID Objects

      ---------------------------                 -------------------------

      None                                        None                     

      

      Review the information before upgrading.


  17. Here is a count of invalid objects by Application users:

      

      Application User Name                       Number of INVALID Objects

      ---------------------------                 -------------------------

      APPS                                        158                      

      

      Review the information before upgrading.


  ORACLE GENERATED FIXUP SCRIPT

  =============================

  All of the issues in database FBS

  which are identified above as BEFORE UPGRADE "(AUTOFIXUP)" can be resolved by

  executing the following


    SQL>@/u01/app/FBS/db/tech_st/12.1.0/cfgtoollogs/FBS/preupgrade/preupgrade_fi

    xups.sql


=============

AFTER UPGRADE

=============


  REQUIRED ACTIONS

  ================

  None


  RECOMMENDED ACTIONS

  ===================

  18. (AUTOFIXUP) If you use the -T option for the database upgrade, then run

      $ORACLE_HOME/rdbms/admin/utluptabdata.sql after the upgrade is complete,

      to VALIDATE and UPGRADE any user tables affected by changes to

      Oracle-Maintained types.

      

      There are user tables dependent on Oracle-Maintained object types.

      

      If the -T option is used to set user tablespaces to READ ONLY during the

      upgrade, user tables in those tablespaces, that are dependent on

      Oracle-Maintained types, will not be automatically upgraded. If a type is

      evolved during the upgrade, any dependent tables need to be re-validated

      and upgraded to the latest type version AFTER the database upgrade

      completes.


  19. Upgrade the database time zone file using the DBMS_DST package.

      

      The database is using time zone file version 18 and the target 19 release

      ships with time zone file version 32.

      

      Oracle recommends upgrading to the desired (latest) version of the time

      zone file.  For more information, refer to "Upgrading the Time Zone File

      and Timestamp with Time Zone Data" in the 19 Oracle Database

      Globalization Support Guide.


  20. Recreate directory objects to remove any symbolic links from directory

      paths.  To identify paths that contain symbolic links before upgrading,

      use OS commands like UNIX file or WINDOWS dir.  After upgrading, run

      $ORACLE_HOME/rdbms/admin/utldirsymlink.sql to identify directory objects

      with symbolic links in the path.

      

      Found 18 user directory objects to be checked: APPS_DATA_FILE_DIR,

      AW_DIR, CSR_XML_TOP, EBS_APPLPTMP, EBS_DB_DIR_UTIL, EBS_INBOUND, EBS_LOG,

      EBS_OUTBOUND, EBS_TEMP, EBS_UTL_FILE_DIR_3210309341466,

      EBS_UTL_FILE_DIR_8892673098921, ECX_UTL_LOG_DIR_OBJ,

      ECX_UTL_XSLT_DIR_OBJ, FND_DIAG_DIR, IDR_DIR, ODPDIR, PREUPG_OUTPUT_DIR,

      TIMEZDIF_DIR.

      

      Starting in Release 18c, symbolic links are not allowed in directory

      object paths used with BFILE data types, the UTL_FILE package, or

      external tables.


  21. (AUTOFIXUP) Gather dictionary statistics after the upgrade using the

      command:

      

        EXECUTE DBMS_STATS.GATHER_DICTIONARY_STATS;

      

      Oracle recommends gathering dictionary statistics after upgrade.

      

      Dictionary statistics provide essential information to the Oracle

      optimizer to help it find efficient SQL execution plans. After a database

      upgrade, statistics need to be re-gathered as there can now be tables

      that have significantly changed during the upgrade or new tables that do

      not have statistics gathered yet.


  22. Gather statistics on fixed objects after the upgrade and when there is a

      representative workload on the system using the command:

      

        EXECUTE DBMS_STATS.GATHER_FIXED_OBJECTS_STATS;

      

      This recommendation is given for all preupgrade runs.

      

      Fixed object statistics provide essential information to the Oracle

      optimizer to help it find efficient SQL execution plans.  Those

      statistics are specific to the Oracle Database release that generates

      them, and can be stale upon database upgrade.

      

      For information on managing optimizer statistics, refer to the 12.1.0.2

      Oracle Database SQL Tuning Guide.


  INFORMATION ONLY

  ================

  23. Check the Oracle documentation for the identified components for their

      specific upgrade procedure.

      

      The database upgrade script will not upgrade the following Oracle

      components:  OLAP Catalog

      

      The Oracle database upgrade script upgrades most, but not all Oracle

      Database components that may be installed.  Some components that are not

      upgraded may have their own upgrade scripts, or they may be deprecated or

      obsolete.


  ORACLE GENERATED FIXUP SCRIPT

  =============================

  All of the issues in database FBS

  which are identified above as AFTER UPGRADE "(AUTOFIXUP)" can be resolved by

  executing the following


    SQL>@/u01/app/FBS/db/tech_st/12.1.0/cfgtoollogs/FBS/preupgrade/postupgrade_f

    ixups.sql



==================

PREUPGRADE SUMMARY

==================

  /u01/app/FBS/db/tech_st/12.1.0/cfgtoollogs/FBS/preupgrade/preupgrade.log

  /u01/app/FBS/db/tech_st/12.1.0/cfgtoollogs/FBS/preupgrade/preupgrade_fixups.sql

  /u01/app/FBS/db/tech_st/12.1.0/cfgtoollogs/FBS/preupgrade/postupgrade_fixups.sql


Execute fixup scripts as indicated below:


Before upgrade:


Log into the database and execute the preupgrade fixups

@/u01/app/FBS/db/tech_st/12.1.0/cfgtoollogs/FBS/preupgrade/preupgrade_fixups.sql


After the upgrade:


Log into the database and execute the postupgrade fixups

@/u01/app/FBS/db/tech_st/12.1.0/cfgtoollogs/FBS/preupgrade/postupgrade_fixups.sql


Preupgrade complete: 2024-12-22T09:32:48


 

Based on recommendation perform the action to fix pre-upgrade issues.

Re-run Preupgrade to check any issues left.

Also, Execute the pre-upgrade fixup script.

[oracle@fbsebs appsutil]$ sqlplus / as sysdba


SQL*Plus: Release 12.1.0.2.0 Production on Sun Dec 22 09:35:09 2024


Copyright (c) 1982, 2014, Oracle.  All rights reserved.



Connected to:

Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production

With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options


SQL> @/u01/app/FBS/db/tech_st/12.1.0/cfgtoollogs/FBS/preupgrade/preupgrade_fixups.sql

Executing Oracle PRE-Upgrade Fixup Script


Auto-Generated by:       Oracle Preupgrade Script

                         Version: 19.0.0.0.0 Build: 13

Generated on:            2024-12-22 09:32:31


For Source Database:     FBS

Source Database Version: 12.1.0.2.0

For Upgrade to Version:  19.0.0.0.0


Preup                             Preupgrade

Action                            Issue Is

Number  Preupgrade Check Name     Remedied    Further DBA Action

------  ------------------------  ----------  --------------------------------

    1.  parameter_obsolete        NO          Manual fixup recommended.

    2.  invalid_objects_exist     NO          Manual fixup recommended.

    3.  amd_exists                NO          Manual fixup recommended.

    4.  duplic_sys_system_objs    NO          Manual fixup recommended.

    5.  exclusive_mode_auth       NO          Manual fixup recommended.

    6.  olap_page_pool_size       NO          Manual fixup recommended.

    7.  case_insensitive_auth     NO          Manual fixup recommended.

    8.  mv_refresh                NO          Manual fixup recommended.

    9.  hidden_params             NO          Informational only.

                                              Further action is optional.

   10.  underscore_events         NO          Informational only.

                                              Further action is optional.

   11.  dictionary_stats          YES         None.

   12.  component_info            NO          Informational only.

                                              Further action is optional.

   13.  tablespaces_info          NO          Informational only.

                                              Further action is optional.

   14.  parameter_deprecated      NO          Informational only.

                                              Further action is optional.

   15.  rman_recovery_version     NO          Informational only.

                                              Further action is optional.

   16.  invalid_ora_obj_info      NO          Informational only.

                                              Further action is optional.

   17.  invalid_app_obj_info      NO          Informational only.

                                              Further action is optional.


The fixup scripts have been run and resolved what they can. However,

there are still issues originally identified by the preupgrade that

have not been remedied and are still present in the database.

Depending on the severity of the specific issue, and the nature of

the issue itself, that could mean that your database is not ready

for upgrade.  To resolve the outstanding issues, start by reviewing

the preupgrade_fixups.sql and searching it for the name of

the failed CHECK NAME or Preupgrade Action Number listed above.

There you will find the original corresponding diagnostic message

from the preupgrade which explains in more detail what still needs

to be done.


PL/SQL procedure successfully completed.




Preup                             Preupgrade

Action                            Issue Is

Number  Preupgrade Check Name     Remedied    Further DBA Action

------  ------------------------  ----------  --------------------------------

    1.  invalid_objects_exist     NO          Manual fixup recommended.

    2.  exclusive_mode_auth       NO          Manual fixup recommended.

    3.  case_insensitive_auth     NO          Manual fixup recommended.

    4.  mv_refresh                NO          Manual fixup recommended.

    5.  underscore_events         NO          Informational only.

                                              Further action is optional.

    6.  dictionary_stats          YES         None.

    7.  parameter_deprecated      NO          Informational only.

                                              Further action is optional.

    8.  min_archive_dest_size     NO          Informational only.

                                              Further action is optional.

    9.  rman_recovery_version     NO          Informational only.

                                              Further action is optional.

Ignore These

 

10.25      Upgrade the database instance

Invoke DBUA using the following command. The keep events parameter allows events in the preupgraded database to be enabled during the upgrade.

In Oracle Database 19c, the DMSYS schema is no longer used. The Data Mining option is installed in the SYS schema. The Oracle 19c pre-upgrade tool has been extended to include a warning that the DMSYS schema should be dropped. If this warning is reported, it is recommended to drop the schema. Removing the DMSYS schema has no effect on the functioning of Data Mining.

 

Disregard warnings related to Network ACLs. AutoConfig manages all the Oracle E-Business Suite Network ACLs.

 

When upgrading all statistics tables, note that Oracle E-Business Suite has only one statistics table (APPLSYS.FND_STATTAB) that needs to be upgraded.

 

Make sure 12c db entry is present in /etc/oratab. Open GUI and run below command



Source 19c Enviornment

[oracle@fbsebs bin]$ pwd

/u01/app/FBS/db/tech_st/19c/appsutil/bin

[oracle@fbsebs bin]$ $ORACLE_HOME/bin/dbua -keepEvents

Logs directory:  /u01/app/FBS/db/cfgtoollogs/dbua/upgrade2024-12-22_09-50-08AM




Follow as per the screen below. Note I have already fixed the pre-upgrade recommendations in earlier steps, so will ignore them in this dbua screen.

























Database upgrade has been completed successfully, and the database is ready to use.

[oracle@fbsebs 19c]$ . 19cdb.env 

[oracle@fbsebs 19c]$ export ORACLE_SID=FBS

[oracle@fbsebs 19c]$ sqlplus / as sysdba


SQL*Plus: Release 19.0.0.0.0 - Production on Sun Dec 22 11:06:02 2024

Version 19.24.0.0.0


Copyright (c) 1982, 2024, Oracle.  All rights reserved.



Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.24.0.0.0


SQL> select banner from v$version;


BANNER

--------------------------------------------------------------------------------

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

10.26      Run the Post Upgrade Script generated during the Pre-Upgrade Steps.

Source 19c Environment

[oracle@fbsebs 19c]$ . 19cdb.env 

[oracle@fbsebs 19c]$ export ORACLE_SID=FBS

[oracle@fbsebs 19c]$ sqlplus / as sysdba

SQL> @/u01/app/FBS/db/tech_st/12.1.0/cfgtoollogs/FBS/preupgrade/postupgrade_fixups.sql

10.27      Post-Upgrade Tasks

Source 19c Environment

[oracle@fbsebs 19c]$ . 19cdb.env 

[oracle@fbsebs 19c]$ export ORACLE_SID=FBS

[oracle@fbsebs 19c]$ sqlplus / as sysdba


There are few important post-upgrade miscellaneous tasks that need to be performed.

If you previously had the SEC_CASE_SENSITIVE_LOGON initialization parameter set to FALSE, re-enable the parameter.



In case spfile is not there then create spfile and restart database.

SQL> alter system set SEC_CASE_SENSITIVE_LOGON=false;

System altered.

SQL> alter trigger SYSTEM.EBS_LOGON compile;

Trigger altered.

SQL> alter system set compatible='19.0.0' scope=spfile;

System altered.


Restart the Database

SQL> shu immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup

ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance

ORACLE instance started.


Total System Global Area 1073739904 bytes

Fixed Size                  8947840 bytes

Variable Size             427819008 bytes

Database Buffers          624951296 bytes

Redo Buffers               12021760 bytes

Database mounted.

Database opened.

SQL> show parameter compatible

 

NAME                         TYPE   VALUE

------------------------------------ ----------- ------------------------------

compatible                   string 19.0.0

noncdb_compatible            boolean      FALSE

1.28      Run DataPatch

Source 19c Environment

[oracle@fbsebs 19c]$ . 19cdb.env 

[oracle@fbsebs 19c]$ export ORACLE_SID=FBS

[oracle@fbsebs 19c]$ sqlplus / as sysdba


[oracle@fbsebs 19c]$ $ORACLE_HOME/OPatch/datapatch

SQL Patching tool version 19.24.0.0.0 Production on Mon Dec 23 08:33:55 2024

Copyright (c) 2012, 2024, Oracle.  All rights reserved.


Log file for this invocation: /u01/app/FBS/db/cfgtoollogs/sqlpatch/sqlpatch_138606_2024_12_23_08_33_55/sqlpatch_invocation.log


Connecting to database...OK

Gathering database info...done

Bootstrapping registry and package to current versions...done

Determining current state...done


Current state of interim SQL patches:

Interim patch 36414915 (OJVM RELEASE UPDATE: 19.24.0.0.240716 (36414915)):

  Binary registry: Installed

  SQL registry: Applied successfully on 22-DEC-24 10.53.16.052130 AM


Current state of release update SQL patches:

  Binary registry:

    19.24.0.0.0 Release_Update 240627235157: Installed

  SQL registry:

    Applied 19.24.0.0.0 Release_Update 240627235157 successfully on 22-DEC-24 10.53.15.995038 AM


Adding patches to installation queue and performing prereq checks...done

Installation queue:

  No interim patches need to be rolled back

  No release update patches need to be installed

  No interim patches need to be applied


SQL Patching tool complete on Mon Dec 23 08:34:11 2024


10.29      Connect to sysdba and run below

Source 19c Environment

[oracle@fbsebs 19c]$ . 19cdb.env 

[oracle@fbsebs 19c]$ export ORACLE_SID=FBS

[oracle@fbsebs 19c]$ sqlplus / as sysdba



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

SQL> @?/rdbms/admin/prvtxdbschmig.plb


10.30      Run ADgrants

Source 19c Environment

[oracle@fbsebs 19c]$ . 19cdb.env 

[oracle@fbsebs 19c]$ export ORACLE_SID=FBS

[oracle@fbsebs 19c]$ sqlplus / as sysdba



Copy adgrants.sql from $APPL_TOP/admin to DB tier and run it



[oracle@fbsebs admin]$ sqlplus / as sysdba


SQL*Plus: Release 19.0.0.0.0 - Production on Mon Dec 23 08:37:04 2024

Version 19.24.0.0.0


Copyright (c) 1982, 2024, Oracle.  All rights reserved.



Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.24.0.0.0


 

SQL> @adgrants.sql apps

 

Note: When running adgrants.sql, you may get ORA-00942 errors. These are caused by adgrants.sql trying to create grants on non-existent objects. The errors can be ignored.



The following ERRORS and WARNINGS have been encountered during this adgrants session:



TIME_STAMP           SESSION_ID LOG_MODULE                                 LOG_LEVEL

-------------------- ---------- ------------------------------------------ ----------

LOG_MESSAGE

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

2022/03/20 12:58:52          20 ad.plsql.ad_zd_sys.GIVE_PRIVILEGE          WARNING

ORA-04042: procedure, function, package, or package body does not exist, SQL: grant EXECUTE on "DBMS_SCHEMA_COPY" to "SYSTEM" with grant option



2022/03/20 12:58:52          20 ad.plsql.ad_zd_sys.GIVE_PRIVILEGE          WARNING

ORA-04042: procedure, function, package, or package body does not exist, SQL: grant EXECUTE on "DBMS_SCHEMA_COPY" to "APPS"



2022/03/20 12:58:59          20 ad.plsql.ad_zd_sys.GIVE_PRIVILEGE          WARNING

ORA-00942: table or view does not exist, SQL: grant WRITE on "DIRECTORY FND_DIAG_DIR" to "APPS"



2022/03/20 12:58:59          20 ad.plsql.ad_zd_sys.GIVE_PRIVILEGE          WARNING

ORA-00942: table or view does not exist, SQL: grant READ on "DIRECTORY FND_DIAG_DIR" to "APPS"







Grants given by this script have been written to the ad_zd_logs table.

You can run $AD_TOP/sql/ADZDSHOWLOG.sql to produce a report showing these grants.

 



10.31      Grant create procedure privilege on CTXSYS

 

Source 19c Environment

[oracle@fbsebs 19c]$ . 19cdb.env 

[oracle@fbsebs 19c]$ export ORACLE_SID=FBS

[oracle@fbsebs 19c]$ sqlplus / as sysdba



Copy $AD_TOP/patch/115/sql/adctxprv.sql from the administration server node to the database server node. Use SQL*Plus to connect to the database as apps and run the script using the following command:

 

$ sqlplus apps/<apps password> @adctxprv.sql <SYSTEM password> CTXSYS

[oracle@fbsebs admin]$ sqlplus apps/apps @adctxprv.sql manager CTXSYS


SQL*Plus: Release 19.0.0.0.0 - Production on Mon Dec 23 08:40:15 2024

Version 19.24.0.0.0


Copyright (c) 1982, 2024, Oracle.  All rights reserved.


Last Successful login time: Sun Dec 22 2024 09:26:02 +03:00


Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.24.0.0.0



Commit complete.


Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.24.0.0.0

10.32      Compile invalid objects

 

Source 19c Environment

[oracle@fbsebs 19c]$ . 19cdb.env 

[oracle@fbsebs 19c]$ export ORACLE_SID=FBS

[oracle@fbsebs 19c]$ sqlplus / as sysdba



Use SQL*Plus to connect to the database as SYSDBA and run the $ORACLE_HOME/rdbms/admin/utlrp.sql script to compile invalid objects.

 

$ sqlplus "/ as sysdba" @$ORACLE_HOME/rdbms/admin/utlrp.sql



SQL> select count(*) from dba_objects where status='INVALID';

 

  COUNT(*)

----------

      17


10.33      Grant datastore access

Source 19c Environment

[oracle@fbsebs 19c]$ . 19cdb.env 

[oracle@fbsebs 19c]$ export ORACLE_SID=FBS

[oracle@fbsebs 19c]$ sqlplus / as sysdba


Use SQL*Plus to connect to the database as SYSDBA and run the following command:

 

$ sqlplus "/ as sysdba"

SQL> grant text datastore access to public;

 

Grant succeeded.

 

10.34      Gather statistics for the SYS schema

Source 19c Environment

[oracle@fbsebs 19c]$ . 19cdb.env 

[oracle@fbsebs 19c]$ export ORACLE_SID=FBS

[oracle@fbsebs 19c]$ sqlplus / as sysdba

 

Copy $APPL_TOP/admin/adstats.sql from the administration server node to the database server node. Note that adstats.sql has to be run in restricted mode. Use SQL*Plus to connect to the database as SYSDBA and use the following commands to run adstats.sql in restricted mode:

 

SQL> alter system enable restricted session;


System altered.


SQL> @adstats.sql

Connected.



--------------------------------------------------

--- adstats.sql started at 2024-12-23 08:51:53 ---



Checking for the DB version and collecting statistics ...



PL/SQL procedure successfully completed.




------------------------------------------------

--- adstats.sql ended at 2024-12-23 08:56:50 ---



Commit complete.


Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.24.0.0.0

[oracle@fbsebs admin]$ sqlplus / as sysdba


SQL*Plus: Release 19.0.0.0.0 - Production on Mon Dec 23 08:56:56 2024

Version 19.24.0.0.0


Copyright (c) 1982, 2024, Oracle.  All rights reserved.



Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.24.0.0.0


SQL> alter system disable restricted session;


System altered.

 

10.35      Create the new MGDSYS schema (Conditional)-Not required by me

 

Source 19c Environment

[oracle@fbsebs 19c]$ . 19cdb.env 

[oracle@fbsebs 19c]$ export ORACLE_SID=FBS

[oracle@fbsebs 19c]$ sqlplus / as sysdba

 

If you upgraded from a database version prior to Oracle 12c, use SQL*Plus to connect to the database as SYSDBA and run the $ORACLE_HOME/rdbms/admin/catmgd.sql script. This creates the new MGDSYS schema.

 

$ sqlplus "/ as sysdba" @?/rdbms/admin/catmgd.sql

 

10.36      Convert Database to Multitenant Architecture or PDB

There are two databases that are associated with the 19c Oracle home, the CDB(fbscdb) and the non-CDB database (FBS). Moreover, the non-CDB database will be migrated to the PDB database. Set the appropriate environment variables to connect to the appropriate database.

Only the txkSetCfgCDB.env/cmd file in the $ORACLE_HOME/appsutil directory is necessary. It sets certain environment variables. However, it does not distinguish between the different databases in the 19c Oracle home. It is used mainly to complete the steps in this subsection. The following steps assume that a new window is brought up every time. However, there is no need to run txkSetCfgCDB.env/cmd twice in the same window. So, you may skip running the txkSetCfgCDB.env/cmd script if it has already been run on the particular terminal you are using.

After running the txkPostPDBCreationTasks.pl, additional environment files are created so that connecting to the database is more convenient. Load the proper environment variables and connect to the database by performing the following steps:

  • For the non-CDB database, source the $ORACLE_HOME/<non-CDB SID>_<HOST>.env/cmd file. Then, run sqlplus <user>/<password>@<non-CDB SID>. (The environment file was created during the earlier upgrade steps)
  • For the CDB database, source the $ORACLE_HOME/<CDB SID>_<HOST>.env/cmd file. Then, run sqlplus <user>/<password> or connect as SYSDBA.
  • For the PDB database on UNIX/Linux platforms, to connect as SYSDBA, source the $ORACLE_HOME/<CDB SID>_<HOST>.env file. Set the ORACLE_PDB_SID environment variable to <PDB SID>. Then, connect as SYSDBA.
  • For the PDB database on Windows platforms, to connect as SYSDBA, source the $ORACLE_HOME/<PDB SID>_<HOST>.cmd file. Then, connect as SYSDBA.
  • For the PDB database, to connect to other users, source the $ORACLE_HOME/<PDB SID>_<HOST>.env/cmd file. Then, run sqlplus <user>/<password>@<PDB SID>.

Note: The txkOnPremPrePDBCreationTasks.pl script shuts down the non-CDB database. Do not manually bring up the non-CDB database. There will be no access to the non-CDB database until after the migration of the non-CDB database to the PDB.

make sure all temp, sys, the system has sufficient free space.

non-CDB database (FBS) has to be kept down.


10.36.1                             Create the PDB descriptor

$ cd $ORACLE_HOME/appsutil

$ . ./txkSetCfgCDB.env dboraclehome=<full path of 19c ORACLE_HOME>

$ export ORACLE_SID=<source SID>

$ cd $ORACLE_HOME/appsutil/bin

$ perl txkOnPremPrePDBCreationTasks.pl -dboraclehome=<ORACLE_HOME> \

-outdir=<ORACLE_HOME>/appsutil/log -appsuser=<apps user> -dbsid=<source SID>

 

[oracle@fbstest tmp]$ cd $ORACLE_HOME/appsutil

[oracle@fbstest appsutil]$ . ./txkSetCfgCDB.env dboraclehome=/u01/app/FBS/db/tech_st/19c

 

Oracle Home being passed: /u01/app/FBS/db/tech_st/19c

[oracle@fbstest appsutil]$ export ORACLE_SID=FBS

[oracle@fbstest appsutil]$ cd $ORACLE_HOME/appsutil/bin

[oracle@fbsebs bin]$ perl txkOnPremPrePDBCreationTasks.pl -dboraclehome=/u01/app/FBS/db/tech_st/19c -outdir=/u01/app/FBS/db/tech_st/19c/appsutil/log -appsuser=apps -dbsid=FBS

Enter the APPS Password: 




Script Name    : txkOnPremPrePDBCreationTasks.pl

Script Version : 120.0.12020000.17

Started        : Mon Dec 23 09:02:40 EAT 2024


Log File       : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/txkOnPremPrePDBCreationTasks.log



-----------

Values used

-----------

DB Oracle Home        : /u01/app/FBS/db/tech_st/19c

OUT Directory         : /u01/app/FBS/db/tech_st/19c/appsutil/log

Skip DB shutdown      : No

EBS SID               : FBS

APPS Schema Username  : apps

Is RAC?               : No

Logical Hostname      : 





=========================

Validating oracle home...

=========================

Oracle Home: /u01/app/FBS/db/tech_st/19c exists.



===========================

Validating out directory...

===========================

Out directory: /u01/app/FBS/db/tech_st/19c/appsutil/log exists.



============================

Inside getDBHostDetails()...

============================

DB Hostname : fbsebs

DB Domain   : finsys.co.ke

Logical hostname is not passed, hence using physical hostname details.

Logical hostname: fbsebs.finsys.co.ke



==========================

Inside setContextName()...

==========================

CONTEXT_NAME: FBS_fbsebs



============================

Inside setFileLocations()...

============================



=====================

Inside getDBName()...

=====================

Generating SQL file : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/get_db_name.sql

SQL output file     : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/get_db_name.out

Spool File          : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/spool_get_db_name.log

==========================

Inside executeSQLFile()...

==========================

Executing the SQL...


Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/get_db_name.sql 



==============================

Inside searchFileContents()...

==============================

log_file: /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/get_db_name.out

pattern: ERROR

=============================

Could not find the pattern...

=============================

Removing the file: /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/get_db_name.sql


EXIT STATUS: 0

Getting the value of DB Name...

db_name: FBS


PDB_DESC_XML: /u01/app/FBS/db/tech_st/19c/dbs/FBS_PDBDesc.xml

INITPARAM_FILE: /u01/app/FBS/db/tech_st/19c/dbs/FBS_initparam.sql

DATATOP_FILE: /u01/app/FBS/db/tech_st/19c/dbs/FBS_datatop.txt



========================

Inside getDBVersion()...

========================

DB_VERSION = db190




=============================

Shutting down the database...

=============================

Shutdown mode       : IMMEDIATE

Generating SQL file : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/shutdown_IMMEDIATE.sql

SQL output file     : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/shutdown_IMMEDIATE.out

==========================

Inside executeSQLFile()...

==========================

Executing the SQL...


Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/shutdown_IMMEDIATE.sql 



==============================

Inside searchFileContents()...

==============================

log_file: /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/shutdown_IMMEDIATE.out

pattern: ERROR

=============================

Could not find the pattern...

=============================

EXIT STATUS: 0

SQL execution went through successfully.

LOG FILE: /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/shutdown_IMMEDIATE.out.



========================

Starting the database...

========================

Startup mode        : MOUNT

Generating SQL file : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/startup_MOUNT.sql

SQL output file     : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/startup_MOUNT.out

==========================

Inside executeSQLFile()...

==========================

Executing the SQL...


Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/startup_MOUNT.sql 



==============================

Inside searchFileContents()...

==============================

log_file: /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/startup_MOUNT.out

pattern: ERROR

=============================

Could not find the pattern...

=============================

EXIT STATUS: 0

SQL execution went through successfully.

LOG FILE: /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/startup_MOUNT.out.



==================================

Inside createPDBDescriptorXML()...

==================================



==================================

Inside backupPDBDescriptorXML()...

==================================



File /u01/app/FBS/db/tech_st/19c/dbs/FBS_PDBDesc.xml does not exist.



File /u01/app/FBS/db/tech_st/19c/dbs/FBS_PDBDesc.xml does not exist.




Generating SQL file : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/create_pdb_desc_xml.sql

SQL output file     : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/create_pdb_desc_xml.out

==========================

Inside executeSQLFile()...

==========================

Executing the SQL...


Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/create_pdb_desc_xml.sql 



==============================

Inside searchFileContents()...

==============================

log_file: /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/create_pdb_desc_xml.out

pattern: ERROR

=============================

Could not find the pattern...

=============================

EXIT STATUS: 0

PDB Descriptor XML /u01/app/FBS/db/tech_st/19c/dbs/FBS_PDBDesc.xml created successfully.

LOG FILE: /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/create_pdb_desc_xml.out.



=============================

Shutting down the database...

=============================

Shutdown mode       : IMMEDIATE

Generating SQL file : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/shutdown_IMMEDIATE.sql

SQL output file     : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/shutdown_IMMEDIATE.out

==========================

Inside executeSQLFile()...

==========================

Executing the SQL...


Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/shutdown_IMMEDIATE.sql 



==============================

Inside searchFileContents()...

==============================

log_file: /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/shutdown_IMMEDIATE.out

pattern: ERROR

=============================

Could not find the pattern...

=============================

EXIT STATUS: 0

SQL execution went through successfully.

LOG FILE: /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_PRE_PDB_Mon_Dec_23_09_02_37_2024/shutdown_IMMEDIATE.out.





****************************************************************************************

*                                                                                      *

*         IMPORTANT NOTE: DO NOT START THE DB TILL THE DATA FILES ARE MIGRATED         *

*                                                                                      *

*         IF DB IS STARTED, THEN PDB DESCRIPTOR XML GENERATED BECOMES INVALID          *

*                                                                                      *

****************************************************************************************





Exiting from the script.

Ended: Mon Dec 23 09:03:34 EAT 2024


10.36.2                             Update the CDB initialization parameters

On the database server node, copy the <source SID>_initparam.sql and <source SID>_datatop.txt files from the source $ORACLE_HOME/dbs directory to the new $ORACLE_HOME/dbs directory. Then use SQL*Plus to connect to the CDB as SYSDBA, and run the following commands to update the CDB initialization parameters:

Port Number Being Passed is for CDB database.

 

$ cd $ORACLE_HOME/appsutil

$ . ./txkSetCfgCDB.env dboraclehome=<full path of ORACLE_HOME>

$ export ORACLE_SID=<CDB SID>

$ sqlplus "/ as sysdba"

SQL> startup nomount;

SQL> @$ORACLE_HOME/dbs/<source SID>_initparam.sql

SQL> alter system set LOCAL_LISTENER="<hostname>:<cdb port number>" scope=both;

SQL> shutdown;

SQL> startup;

 

[oracle@fbstest dbs]$ pwd

/u01/app/FBS/db/tech_st/12.1.0/dbs

[oracle@fbstest dbs]$ cp FBS_initparam.sql FBS_datatop.txt /u01/app/FBS/db/tech_st/19c/dbs/

Remove line from FBS_initparam.sql

alter system set CONNECTION_BROKERS="((TYPE=DEDICATED)(BROKERS=1)), ((TYPE=EMON)(BROKERS=1))" scope=spfile;

[oracle@fbstest bin]$ cd $ORACLE_HOME/appsutil

[oracle@fbsebs appsutil]$ . ./txkSetCfgCDB.env dboraclehome=$ORACLE_HOME


Oracle Home being passed: /u01/app/FBS/db/tech_st/19c

[oracle@fbsebs appsutil]$ export ORACLE_SID=cdbfbs

[oracle@fbsebs appsutil]$ sqlplus / as sysdba


SQL*Plus: Release 19.0.0.0.0 - Production on Mon Dec 23 09:14:46 2024

Version 19.24.0.0.0


Copyright (c) 1982, 2024, Oracle.  All rights reserved.


Connected to an idle instance.


 

SQL> startup nomount;

ORACLE instance started.


Total System Global Area 1.2885E+10 bytes

Fixed Size    13925624 bytes

Variable Size  1946157056 bytes

Database Buffers  1.0905E+10 bytes

Redo Buffers    19628032 bytes

SQL> @$ORACLE_HOME/dbs/FBS_initparam.sql


System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.



System altered.


SQL> alter system set LOCAL_LISTENER="fbsebs:1531" scope=both;


System altered.


SQL> shu immediate

ORA-01507: database not mounted



ORACLE instance shut down.

SQL> startup

ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance

ORACLE instance started.


Total System Global Area 1073740592 bytes

Fixed Size     9186096 bytes

Variable Size   427819008 bytes

Database Buffers   624951296 bytes

Redo Buffers    11784192 bytes

Database mounted.

Database opened.

SQL> select name,open_mode from v$database;


NAME   OPEN_MODE

--------- --------------------

CDBFBS   READ WRITE


10.36.3                             Check for PDB violations

Use the following commands to run the txkChkPDBCompatability.pl script. This checks the PDB for any violations.

$ cd $ORACLE_HOME/appsutil

$ . ./txkSetCfgCDB.env dboraclehome=<full path of ORACLE_HOME>

$ export ORACLE_SID=<CDB SID>

$ cd $ORACLE_HOME/appsutil/bin

$ perl txkChkPDBCompatability.pl -dboraclehome=<ORACLE_HOME> \

-outdir=<ORACLE_HOME>/appsutil/log -cdbsid=<CDB SID> \

-pdbsid=<source SID> -servicetype=onpremise



[oracle@fbsebs appsutil]$ cd $ORACLE_HOME/appsutil

[oracle@fbsebs appsutil]$ . ./txkSetCfgCDB.env dboraclehome=$ORACLE_HOME


Oracle Home being passed: /u01/app/FBS/db/tech_st/19c

[oracle@fbsebs appsutil]$ export ORACLE_SID=cdbfbs

[oracle@fbsebs appsutil]$ cd $ORACLE_HOME/appsutil/bin

[oracle@fbsebs bin]$ perl txkChkPDBCompatability.pl -dboraclehome=$ORACLE_HOME -outdir=$ORACLE_HOME/appsutil/log -cdbsid=cdbfbs -pdbsid=FBS -servicetype=onpremise



Script Name    : txkChkPDBCompatability.pl

Script Version : 120.0.12020000.11

Started        : Mon Dec 23 09:24:45 EAT 2024


Log File       : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CHK_PDB_COMPTABILITY_Mon_Dec_23_09_24_45_2024/txkChkPDBCompatability.log



-----------

Values used

-----------

Database Oracle Home    : /u01/app/FBS/db/tech_st/19c

CDB SID                 : cdbfbs

PDB SID                 : FBS

OUT Directory           : /u01/app/FBS/db/tech_st/19c/appsutil/log

Service Type            : onpremise





=========================

Validating oracle home...

=========================

Oracle Home: /u01/app/FBS/db/tech_st/19c exists.



===========================

Validating out directory...

===========================

Oracle Home: /u01/app/FBS/db/tech_st/19c/appsutil/log exists.



=============================

Validating DB service type...

=============================

Service Type: onpremise

Service type is valid.



============================

Inside setFileLocations()...

============================

PDB_DESC_XML: /u01/app/FBS/db/tech_st/19c/dbs/FBS_PDBDesc.xml



**** Setting ORACLE_SID to cdbfbs





========================

Inside getDBVersion()...

========================

DB_VERSION = db190




=================================

Inside checkPDBCompatibility()...

=================================

File /u01/app/FBS/db/tech_st/19c/dbs/FBS_PDBDesc.xml exists.

Generating SQL file : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CHK_PDB_COMPTABILITY_Mon_Dec_23_09_24_45_2024/create_pdb_compatible.sql

SQL output file     : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CHK_PDB_COMPTABILITY_Mon_Dec_23_09_24_45_2024/create_pdb_compatible.out

==========================

Inside executeSQLFile()...

==========================

Executing the SQL...


Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CHK_PDB_COMPTABILITY_Mon_Dec_23_09_24_45_2024/create_pdb_compatible.sql 

==============================

Inside searchFileContents()...

==============================

log_file: /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CHK_PDB_COMPTABILITY_Mon_Dec_23_09_24_45_2024/create_pdb_compatible.out

pattern: ERROR

=============================

Could not find the pattern...

=============================

EXIT STATUS: 0

PDB compatability check executed successfully.

LOG FILE: /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CHK_PDB_COMPTABILITY_Mon_Dec_23_09_24_45_2024/create_pdb_compatible.out.



====================================

Inside checkPDBPluginViolations()...

====================================

File /u01/app/FBS/db/tech_st/19c/dbs/FBS_PDBDesc.xml exists.

Generating SQL file : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CHK_PDB_COMPTABILITY_Mon_Dec_23_09_24_45_2024/check_pdb_plugin_violations.sql

SQL output file     : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CHK_PDB_COMPTABILITY_Mon_Dec_23_09_24_45_2024/check_pdb_plugin_violations.out

==========================

Inside executeSQLFile()...

==========================

Executing the SQL...


Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CHK_PDB_COMPTABILITY_Mon_Dec_23_09_24_45_2024/check_pdb_plugin_violations.sql 

==============================

Inside searchFileContents()...

==============================

log_file: /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CHK_PDB_COMPTABILITY_Mon_Dec_23_09_24_45_2024/check_pdb_plugin_violations.out

pattern: ERROR

================

Pattern found...

================

EXIT STATUS: 1



Violations reported for the database 'FBS' to be plugged in. Cannot proceed further.







****************************************************************************************

CHECK THE BELOW LOG FILE FOR VIOLATIONS:

/u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CHK_PDB_COMPTABILITY_Mon_Dec_23_09_24_45_2024/check_pdb_plugin_violations.out

****************************************************************************************



===================================

Inside checkUNDOMgmtViolations()...

===================================

File /u01/app/FBS/db/tech_st/19c/dbs/FBS_PDBDesc.xml exists.

Generating SQL file : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CHK_PDB_COMPTABILITY_Mon_Dec_23_09_24_45_2024/check_undo_mgmt.sql

SQL output file     : /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CHK_PDB_COMPTABILITY_Mon_Dec_23_09_24_45_2024/check_undo_mgmt.out

==========================

Inside executeSQLFile()...

==========================

Executing the SQL...


Execute SYSTEM command : sqlplus -s /nolog @/u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CHK_PDB_COMPTABILITY_Mon_Dec_23_09_24_45_2024/check_undo_mgmt.sql 

==============================

Inside searchFileContents()...

==============================

log_file: /u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CHK_PDB_COMPTABILITY_Mon_Dec_23_09_24_45_2024/check_undo_mgmt.out

pattern: ERROR|WARNING

=============================

Could not find the pattern...

=============================

EXIT STATUS: 0



No UNDO MANAGEMENT violations in the plugged in PDB 'FBS'. Proceed further.







****************************************************************************************

CHECK THE BELOW LOG FILE FOR VIOLATIONS:

/u01/app/FBS/db/tech_st/19c/appsutil/log/TXK_CHK_PDB_COMPTABILITY_Mon_Dec_23_09_24_45_2024/check_undo_mgmt.out

****************************************************************************************





****************************************************************************************

*                                                                                      *

*       IMPORTANT NOTE: RESOLVE ALL VIOLATIONS BEFORE PROCEEDING TO CREATE PDB         *

*                                                                                      *

*         - All the errors except SQL PATCH ERRORS should be resolved                  *

*                                                                                      *

*         - All the warnings except CHARACTER SET WARNINGS can be ignored              *

*                                                                                      *

*         - Review and set the INIT PARAMETERs to match the EBS requirements           *

*                                                                                      *

****************************************************************************************





Exiting from the script.

Ended: Mon Dec 23 09:24:46 EAT 2024


 

 

Note: Use the same command options for Oracle Cloud Infrastructure Compute environments.

No Voilations found in my enviornment.

 

Review all warnings and resolve all errors. Do not run noncdb_to_pdb.sql as that will be run by txkCreatePDB.pl in the next step.

10.36.4                             Create the PDB

Load the environment variables by running the following commands.

 

Make sure to extend tablespaces on CDB to have sufficient space.



$ cd $ORACLE_HOME/appsutil

$ . ./txkSetCfgCDB.env dboraclehome=<full path of ORACLE_HOME>

$ cd $ORACLE_HOME/appsutil/bin



$ perl txkCreatePDB.pl -dboraclehome=<ORACLE_HOME> -outdir=<ORACLE_HOME>/appsutil/log \

-cdbsid=<CDB SID> -pdbsid=<source SID> -dbuniquename=<CDB SID> -servicetype=onpremise



Note: Use the same command options for Oracle Cloud Infrastructure Compute environments.



The PDB datafile location can be the same as the source datafile location.

[oracle@fbsebs bin]$ cd $ORACLE_HOME/appsutil

[oracle@fbsebs appsutil]$ . ./txkSetCfgCDB.env dboraclehome=$ORACLE_HOME

 

Oracle Home being passed: /u01/app/FBS/db/tech_st/19c

[oracle@fbsebs appsutil]$ cd $ORACLE_HOME/appsutil/bin

[oracle@fbsebs bin]$ perl txkCreatePDB.pl -dboraclehome=$ORACLE_HOME -outdir=$ORACLE_HOME/appsutil/log -cdbsid=cdbfbs -pdbsid=FBS -dbuniquename=cdbfbs -servicetype=onpremise

 

I am keeping the data top for non-CDB(FBS) and PDB the same on ASM. Make sure you have sufficient space where PDB datafiles will sit



Non-CDB on ASM--+EBS_DATA

PDB on ASM--+EBS_DATA

DATA_TOP_1(In case of file system below)

===========

Enter the non-CDB data top [/oraapps122/DATABASE/FBS/data]:

Enter the corresponding PDB data top [/oraapps122/DATABASE/FBS/data]:

In case of ASM



Number of DATA_TOPs: 2





DATA_TOP_2

===========

Enter the non-CDB data top [+EBS_DATA/FBS/TEMPFILE]:

Enter the corresponding PDB data top [+EBS_DATA/FBS/TEMPFILE]:



DATA_TOP_1

===========

Enter the non-CDB data top [+EBS_DATA/FBS/DATAFILE]:

Enter the corresponding PDB data top [+EBS_DATA/FBS/DATAFILE]:

10.36.5                             Run the post PDB script

 

Source 19c

export ORACLE_SID=fbscdb

sqlplus '/as sysdba'

alter user system identified by OraHim#123;

 

change CDB system password

 

Use the following commands to run the txkPostPDBCreationTasks.pl script. This updates the PDB configuration.

 

$ cd $ORACLE_HOME/appsutil

$ . ./txkSetCfgCDB.env dboraclehome=<full path of ORACLE_HOME>

$ perl $ORACLE_HOME/appsutil/bin/txkPostPDBCreationTasks.pl -dboraclehome=<ORACLE_HOME> \

-outdir=<ORACLE_HOME>/appsutil/log -cdbsid=<CDB SID> -pdbsid=<PDB SID> \

-appsuser=apps -dbport=<CDB TNS port number> -servicetype=onpremise

 

[oracle@fbsebs bin]$ cd $ORACLE_HOME/appsutil

[oracle@fbsebs appsutil]$ . ./txkSetCfgCDB.env dboraclehome=$ORACLE_HOME

 

Oracle Home being passed: /u01/app/FBS/db/tech_st/19c

[oracle@fbsebs appsutil]$ perl $ORACLE_HOME/appsutil/bin/txkPostPDBCreationTasks.pl -dboraclehome=$ORACLE_HOME -outdir=$ORACLE_HOME/appsutil/log -cdbsid=cdbfbs -pdbsid=FBS -appsuser=apps -dbport=1531 -servicetype=onpremise

Enter the APPS Password:

 

Enter the CDB SYSTEM Password:



Give CDB System password with password complexity.

Password must contain at least 1 special character

Note: Use the same command options for Oracle Cloud Infrastructure Compute environments.



This step also runs the autoconfig at DB level.



SQL> show pdbs



    CON_ID CON_NAME                       OPEN MODE  RESTRICTED

---------- ------------------------------ ---------- ----------

         2 PDB$SEED                       READ ONLY  NO

         3 FBS                           READ WRITE NO



10.36.6   Change Initialization Parameters

 

Use the following sections in My Oracle Support Knowledge Document 396009.1Database Initialization Parameter Settings for Oracle E-Business Suite Release 12, as a guideline in modifying your initialization parameters.



[oracle@fbsebs dbs]$ export ORACLE_SID=fbscdb

[oracle@fbsebs dbs]$ sqlplus '/as sysdba'

 

alter system set event='10946 trace name context forever, level 8454144' scope=spfile;

alter system set sec_case_sensitive_logon=FALSE scope=spfile;



10.37      Run Autoconfig on the Application tier

 

Add the CDB entry in tnsnames.ora of Application

 

<TWO_TASK> =

 (DESCRIPTION =

  (ADDRESS = (PROTOCOL=tcp)(HOST=<hostname>.<domain>)(PORT=<port number>))

  (CONNECT_DATA = (SERVICE_NAME=ebs_<PDB SID>)(INSTANCE_NAME=<CDB SID>))

 )

 

As the user of the applications server node, on both the Patch and Run APPL_TOP, modify the $TNS_ADMIN/tnsnames.ora file to specify the CDB instance name. The following shows the format of the new TNS entry.

 

fbscdb =

 (DESCRIPTION =

  (ADDRESS = (PROTOCOL=tcp)(HOST=fbstest.finsys.co.ke)(PORT=1522))

  (CONNECT_DATA = (SERVICE_NAME=ebs_FBS)(INSTANCE_NAME=fbscdb))

 )



Update the following values in the context file of every Applications tier server node.

Variable Name         Value

s_dbport    New database port

s_apps_jdbc_connect_descriptor      NULL

s_applptmp  Directory (not /usr/tmp) defined in UTL_FILE_DIR

To identify the allowable directories for s_applptmp use, connect to the Oracle E-Business Suite database instance as the apps user (on PDB)and run the following query:

 

SQL> select value from v$parameter where name='utl_file_dir';

if no row 

[oracle@fbsebs appsutil]$ perl $ORACLE_HOME/appsutil/bin/txkCfgUtlfileDir.pl -contextfile=$ORACLE_HOME/appsutil/FBS_fbsebs.xml -oraclehome=/u01/app/oracle/product/19c -outdir=/u01/app/oracle/product/19c/appsutil/log -mode=addUtlFileDir

Enter the APPS Password: 



Script Name    : txkCfgUtlfileDir.pl

Script Version : 120.0.12020000.31

Started        : Fri Jan  3 10:54:48 EAT 2025


Log File       : /u01/app/oracle/product/19c/appsutil/log/TXK_UTIL_DIR_Fri_Jan_3_10_54_45_2025/txkCfgUtlfileDir.log


Context file: /u01/app/FBS/db/tech_st/19c/appsutil/FBS_fbsebs.xml exists.



Enter the ebs_system Password: 


Enter the new OS path to be added to UTL_FILE_DIR: /u01/app/FBS/db/UtlfileDir




Completed        : Fri Jan  3 10:55:09 EAT 2025



Successfully Completed the script

ERRORCODE = 0 ERRORCODE_END


Run AutoConfig on both patch and run APPL_TOPs using the following command.

 

$INST_TOP/admin/scripts/adautocfg.sh



Note: When running AutoConfig on the patch file system APPL_TOP, ignore all errors.

 

10.38      Apply post-upgrade WMS patches (Conditional)-Not Needed

If you upgraded from a database version prior to 12c, apply Patch 19007053. Since the WLS admin server has not yet been brought up, apply the patch in downtime mode on the run APPL_TOP by running the following command:

 

$ adop phase=apply patches=19007053 apply_mode=downtime

 

10.39      Recreate custom database links (Conditional)

If the Oracle Net listener in the 19c Oracle home is defined differently to the one used by the old Oracle home, you must recreate any custom self-referential database links that exist in the Oracle E-Business Suite database instance. To check for the existence of database links, use SQL*Plus on the database server node to connect to the database instance as apps and run the following query:

 

$ sqlplus apps/<apps password>

SQL> select db_link from all_db_links;

 

The EDW_APPS_TO_WH and APPS_TO_APPS database links, if they exist, should have been updated with the new port number by AutoConfig.

If you have custom self-referential database links in the database instance, use the following commands to drop and recreate them:

 

$ sqlplus apps/<apps password>

SQL> drop database link <custom database link>;

SQL> create database link <custom database link> connect to <user> identified by

<password> using '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=<hostname>)

(PORT=<port number>))(CONNECT_DATA=(SID=<ORACLE_SID>)))';

 

 

1.40      Start Application Services and Validate the Database Version





Finally this completes our upgrade to 19c

10.41      Working with EBS R12 on Multitenant Architecture 19c DB (CDB/PDB)

10.41.1                             How does Oracle E-Business Suite support the multitenant architecture?

Oracle E-Business Suite supports the multitenant architecture with a single CDB containing a single pluggable Oracle E-Business Suite database (PDB) in the following combinations:

  • Oracle E-Business Suite 12.2.3 and later with Oracle Database 19c on-premises
  • Oracle E-Business Suite 12.2.3 and later with Oracle Database 12cR1 VM DB Systems or Oracle Database 12cR1 in an Exadata DB System
  • Oracle E-Business Suite 12.1.3 with Oracle Database 19c on-premises
  • Oracle E-Business Suite 12.1.3 with Oracle Database 12cR1 VM DB Systems or Oracle Database 12cR1 in an Exadata DB System

10.41.2                             How many PDBs are supported in a CDB that is running Oracle E-Business Suite?

At present, Oracle E-Business Suite supports a single PDB (single tenant) in a CDB.

  • Are there additional licensing requirements?

Oracle E-Business Suite currently supports a single pluggable database (single tenant) with a CDB architecture (see previous question). A single PDB in a CDB does not require licensing the Oracle Multitenant database option

 

10.41.3                             How do I source the Oracle E-Business Suite CDB environment?

Oracle E-Business Suite database CDB environment files are located in the database ORACLE_HOME. Run the following commands:

$ cd $ORACLE_HOME

$ source <CDB_NAME>_<NODE_NAME>.env 

10.41.4                             How do I connect to the Oracle E-Business Suite CDB as SYSDBA?

Source the CDB environment file in the ORACLE_HOME and then use SQL*Plus to connect to the CDB as SYSDBA:

$ cd $ORACLE_HOME

$ source <CDB_NAME>_<NODE_NAME>.env

$ sqlplus "/ as sysdba"  

10.41.5                             How do I start the CDB that hosts the Oracle E-Business suite PDB?

You will use either SQL*Plus or srvctl, depending on whether you are using a single-node instance or Oracle RAC system.

  • On a single-node instance, run the following commands:
    $ source <CDB_NAME>_<NODE_NAME>.env
    $ sqlplus "/ as sysdba"
    SQL> startup;
  • On an Oracle RAC system, run the following commands:
    $ source <CDB_NAME>_<NODE_NAME>.env
    $ srvctl start database -d <CDB name>

10.41.6                             How do I shut down the CDB that hosts the Oracle E-Business Suite PDB?

You will use either SQL*Plus or srvctl, depending on whether you are using a single-node instance or Oracle RAC system.

  • On a single-node instance, run the following commands:
    $ source <CDB_NAME>_<NODE_NAME>.env
    $ sqlplus "/ as sysdba"

    SQL> shutdown normal;
  • On an Oracle RAC system, run the following commands:
    $ source <CDB_NAME>_<NODE_NAME>.env
    $ srvctl stop database -d <CDB name>
  • How do I clone an Oracle E-Business Suite environment with a CDB?

In on-premises environments, the Oracle E-Business Suite Rapid Clone utility can be used to clone both the CDB and PDB together.

 

10.41.7                             How do I source the Oracle E-Business Suite PDB environment?

The Oracle E-Business Suite database PDB environment files are located in the database ORACLE_HOME:

$ cd $ORACLE_HOME

$ source <PDB_NAME>_<NODE_NAME>.env

  •  

10.41.8                             How do I connect to the Oracle E-Business Suite PDB as SYSDBA?

Source the CDB environment file, export the Oracle E-Business Suite PDB name, then use SQL*Plus to connect to the PDB as SYSDBA:

$ source <CDB_NAME>_<NODE_NAME>.env

$ export ORACLE_PDB_SID=<PDB NAME>;

$ sqlplus "/ as sysdba" 

 

10.41.9                             How do I open the Oracle E-Business Suite PDB?

Source the CDB environment file, connect to the CDB as SYSDBA, then execute the SQL shown in the example to start the PDB:

$ source <CDB_NAME>_<NODE_NAME>.env

$ sqlplus "/ as sysdba"

SQL> alter pluggable database <EBS PDB Name> open read write services=all; 

10.41.10                      How do I close the Oracle E-Business Suite PDB?

Source the CDB environment, connect to the CDB as SYSDBA, then execute the SQL shown in the example to close the PDB:

$ source <CDB_NAME>_<NODE_NAME>.env

$ sqlplus "/ as sysdba"

SQL> alter pluggable database <EBS PDB Name> close immediate;

There is also the option to save the state of the PDB. Oracle will then preserve the mode when you restart the CDB. You can find the current saved state by querying DBA_PDB_SAVED_STATES:

$ source <CDB_NAME>_<NODE_NAME>.env

$ sqlplus "/ as sysdba"

SQL> alter pluggable database <EBS PDB Name> save state;

SQL> alter pluggable database <EBS PDB Name> close immediate; 

10.41.11                      How do I find Oracle E-Business Suite PDB information and status?

The following SQL returns the values for the con_id, con_name, open mode, restricted values of all your PDBs.

$ source <CDB_NAME>_<NODE_NAME>.env

$ sqlplus "/ as sysdba"

SQL> show pdbs;

Alternatively, you could use the following SQL to return only the values for name and open mode:

$ source <CDB_NAME>_<NODE_NAME>.env

$ sqlplus "/ as sysdba"

SQL> select name, open_mode from v$pdbs; 

10.41.12                      How do I access the Oracle E-Business Suite PDB while logged into the CDB?

Use the following command to set the environment, show the PDB name, and then connect to that PDB:

$ source <CDB_NAME>_<NODE_NAME>.env

$ sqlplus "/ as sysdba"

SQL> show pdbs;

SQL> alter session set container=”PDBNAME”; 

10.41.13                      Where do I look for PDB errors if I encounter a problem?

Source the environment and then review any plugin violations, as shown in the following example:

$ source <CDB_NAME>_<NODE_NAME>.env

$ sqlplus "/ as sysdba"

SQL> select name, cause, message, status from PDB_PLUG_IN_VIOLATIONS; 

10.41.14                      Can I unplug an Oracle E-Business Suite PDB from one CDB and plug it into another CDB?

At present, there is no supported procedure to unplug an Oracle E-Business Suite PDB and plug (relocate or clone) it to another CDB.

10.41.15                      What parameters in the Oracle E-Business Suite database context file support the multitenant architecture?

Context variables used to support the multitenant architecture are as follows:

  • s_pluggable_database: This variable is set to TRUE in a multitenant database.
  • s_pdb_name: This variable is set to PDB name.
  • s_cdb_name: This variable is set to CDB SID.
  • s_cdb_unique_name: This variable is set to the DB unique name for the CDB.
  • s_dbService: This variable is set to ebs_<PDB name> in a multitenant database.
  • s_db_tenancy: This variable is set to multi-tenant in a multitenant database.
  • s_cdb_tnsadmin: This variable is set to $ORACLE_HOME/network/admin.
  • Before running AutoConfig on the database tier, do I source the PDB environment or CDB environment?

You should always source the Oracle E-Business Suite PDB environment before running AutoConfig. You can do so by running the following commands:

$ cd $ORACLE_HOME

$ source <PDB_NAME>_<NODE_NAME>.env

 

10.41.16                      How do I set up the environment to run an Oracle E-Business Suite Script or SQL session?

Source the Oracle Home <CDB_NAME>_<HOSTNAME>.env and set the PDB environment variable ORACLE_PDB_SID=<PDB_NAME> before running Oracle E-Business Suite programs such as adgrants.sql.

$ source <CDB_NAME>_<NODE_NAME>.env

$ export ORACLE_PDB_SID=<PDB_NAME>

$ sqlplus "/ as sysdba"

 

10.41.17                      How do I run the EBS Technology Codelevel Checker (ETCC) against my Oracle E-Business Suite PDB?

The EBS Technology Codelevel Checker (ETCC) utility provides two scripts to help ensure you have the necessary database and application tier patches installed on your Oracle E-Business Suite Release 12.2 instance.

ETCC extracts environment-related information from the context file (using the location defined in $CONTEXT_FILE), so you need to source the Oracle E-Business Suite PDB environment before you run the database checker script. For OCI-based environments, you also need to add the cloud=y parameter.

Download ETCC as Patch 17537119 from My Oracle Support and unzip it into a working directory. Then proceed with whichever of the following steps applies to you:

  • For an on-premises environment, run the commands:
    $ source <EBS PDB Name>_<NODE_NAME>.env
    $ ./checkDBpatch.sh
  • For an environment in Oracle Cloud Infrastructure, run the commands:
    $ source <EBS PDB Name>_<NODE_NAME>.env
    $ ./checkDBpatch.sh cloud=y

10.41.18                      How do I list the OPatch inventory for a multitenant database?

You can list the OPatch inventory of a multitenant database in the same way as for non-CDB. Run the following commands:

$ source <CDB_NAME>_<NODE_NAME>.env

$ export PATH=$PATH:$ORACLE_HOME/OPatch

$ opatch lsinventory -detail

10.41.19                      How do I set up the environment to install a database patch in an Oracle E-Business Suite multitenant database?

Source the CDB environment and add the OPatch directory to the path, as shown in the following example:

$ source <CDB_NAME>_<NODE_NAME>.env

$ export PATH=$PATH:$ORACLE_HOME/OPatch

Note: Before running datapatch, ensure that the Oracle E-Business Suite PDB is open as datapatch will only apply or roll back SQL fixes for open PDBs. 

 

10.41.20                      How do I find the location of the alert log and trace files for my multitenant database?

Each CDB has an associated alert log, which is used to record log information, warnings and alerts about the Oracle E-Business Suite PDB. It is located in the "Diag Trace" of the container database. Also, all PDBs plugged in a given CDB write trace data to the "Diag Trace" of the container database, which can be found by querying v$diag_info dynamic view as in the following example:

$ source <CDB_NAME>_<NODE_NAME>.env

$ sqlplus "/ as sysdba"

SQL> select value from v$diag_info where name = 'Diag Trace'; 

10.41.21                      How do I generate an AWR snapshot report for my pluggable database?

In Oracle Database 12c Release 1, AWR snapshots are only created at the CDB-level (CDB root). This AWR snapshot is for the whole database system in that it contains the statistical information about the CDB as well as all the PDBs in a multitenant environment.

Oracle 19c multitenant supports AWRs at the CDB and PDB level. There are two new views:

  • AWR_ROOT view: This shows the AWR data stored only on a CDB root, which are generally equivalent to the DBA_HIST views.
  • AWR_PDB view: There are a few PDB-level metrics, but the vast majority are instance-wide statistics that are not shown at this level for security reasons. Hence these will not be flushed in AWR, and will always be shown as 0 in the AWR report.

Use the following commands as a basis to create a snapshot and specify AWR_ROOT or AWR_PDB as appropriate:

$ source <CDB_NAME>_<NODE_NAME>.env

$ export ORACLE_PDB_SID=<PDB NAME>;

$ sqlplus "/ as sysdba"

# Run awrrpt.sql file

SQL> @$ORACLE_HOME/rdbms/admin/awrrpt.sql

...

...

Specify the location of AWR Data

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

AWR_ROOT - Use AWR data from root (default)

AWR_PDB - Use AWR data from PDB

...

 



Please also check document for issues after upgrade

 

References:

19c Database with Oracle E-Business Suite R12 Known Issues & Solutions (Doc ID 2662860.1)

MOS Doc Id. 1594274.1 Install Oracle Database binaries 19c and apply EBS overlay patches as per

MOS Doc Id. 2552181.1 Interoperability Notes: Oracle E-Business Suite Release 12.2 with Oracle EBS Database 19c

MOS (Doc ID 396009.1) Database Initialization Parameters for Oracle E-Business Suite Release 12

(MOS Note 2530665.1) Using Oracle Database 19c RAC Multitenant (Single PDB) with Oracle E-Business Suite Release 12.2

(MOS Note 2554156.1) Export/Import Process for Oracle E-Business Suite Release 12.2 Database Instances Using Oracle Database 19

Oracle E-Business Suite and the Oracle Multitenant Architecture (Doc ID 2567105.1)

No comments:

Post a Comment