Comprehensive Guide: Cloning Oracle E-Business Suite R12.1.3 with 19c Database
Overview
This article provides a detailed, step-by-step procedure for cloning an Oracle E-Business Suite Release 12.1.3 environment with a 19c Oracle Database from a source system to a target system. The process covers all prerequisites, pre-clone activities, backup procedures, and post-clone configuration steps.
Environment Specifications
Source Environment
Component Details EBS Version R12.1.3 Database Version 19.0.0.0 SID FBS Server fbstest.finsys.co.ke DB OS User oracle Apps OS User applmgr OEL Version 8.10 Target Environment
Component Details EBS Version R12.1.3 Database Version 19.26.0.0 SID VIS Server ebstest.finsys.co.ke DB OS User oracle Apps OS User applmgr OEL Version 8.10 Phase 1: Pre-Requisite Steps for Source Environment
1.1 Application Tier Patches
Before initiating the cloning process, apply the following critical patches on the source application tier:
Patch Number Description 23569686 R12.AD.B.delta.8 27102203 TXK AutoConfig Template Rollup patch 27135427 12.1 RAPIDCLONE CONSOLIDATED FIXES AUG/2018 Verification Step:
-- Verify bug fixes are applied select bug_number from ad_bugs where bug_number in ('9171651','9833058','12404574','12598630','15969020', '16958896','13942692','8919489');1.2 Post-Patch Configuration
Step 1: Run AutoConfig on the application tier:
[applmgr@fbstest ~]$ cd $ADMIN_SCRIPTS_HOME [applmgr@fbstest ~]$ ./adautocfg.shStep 2: Source the environment and recreate appsutil:
[applmgr@fbstest ~]$ cd $APPL_TOP [applmgr@fbstest ~]$ . APPSFBS_fbstest.env [applmgr@fbstest ~]$ perl $AD_TOP/bin/admkappsutil.plExpected Output:
Starting the generation of appsutil.zip Log file located at /u01/apps/FBS/inst/apps/FBS_fbstest/admin/log/MakeAppsUtil_12011758.log output located at /u01/apps/FBS/inst/apps/FBS_fbstest/admin/out/appsutil.zip MakeAppsUtil completed successfully.1.3 Copy appsutil to Database Tier
Step 1: Copy appsutil.zip to the database ORACLE_HOME:
[oracle@fbstest ~]$ . fbscdb.env [oracle@fbstest ~]$ cd $ORACLE_HOME [oracle@fbstest 19c]$ mv appsutil.zip appsutil.zip_orig [oracle@fbstest 19c]$ cp /u01/apps/FBS/inst/apps/FBS_fbstest/admin/out/appsutil.zip . [oracle@fbstest 19c]$ unzip -o appsutil.zipStep 2: Run AutoConfig on the database tier:
[oracle@fbstest 19c]$ cd $ORACLE_HOME/appsutil/bin [oracle@fbstest bin]$ perl adconfig.pl contextfile=/u01/app/FBS/db/tech_st/19c/appsutil/FBS_fbstest.xmlOutput:
AutoConfig completed successfully.1.4 Linux Library Soft Links
Create the following symbolic links on the target system:
For Linux 7 and 8:
# cd /usr/lib # ln -s libdb-5.3.so libdb-4.3.so # cd /usr/lib # ln -s libXm.so.4.0.4 libXm.so.2For Linux 6 and 5:
# unlink /usr/lib/libXtst.so.6 # ln -s /usr/X11R6/lib/libXtst.so.6.1 /usr/lib/libXtst.so.6 # ln -s /usr/lib/libgdbm.so.2.0.0 /usr/lib/libdb.so.2Phase 2: Database Tier Pre-Clone Steps
2.1 Verify Database Status
[oracle@fbstest ~]$ sqlplus / as sysdba-- Verify CDB and PDB are running SQL> select name, open_mode from v$database; NAME OPEN_MODE --------- -------------------- CDBFBS READ WRITE SQL> show pdbs; CON_ID CON_NAME OPEN MODE RESTRICTED ------ ------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 FBS READ WRITE NO2.2 ETCC Configuration
Step 1: Create the ETCC directory if it doesn't exist:
mkdir -p /u01/app/FBS/db/tech_st/19c/appsutil/etccStep 2: Download and install patch 17537119 (latest) from My Oracle Support:
cd /u01/app/FBS/db/tech_st/19c/appsutil/etcc unzip p17537119_*.zipStep 3: Run the ETCC check:
source $ORACLE_HOME/FBS_fbstest.env cd $ORACLE_HOME/appsutil/etcc ./checkDBpatch.sh2.3 Run adpreclone.pl on Database Tier
[oracle@fbstest ~]$ . FBS_fbstest.env [oracle@fbstest ~]$ cd $ORACLE_HOME/appsutil/scripts/$CONTEXT_NAME [oracle@fbstest FBS_fbstest]$ perl adpreclone.pl dbTierOutput:
Beginning database tier Stage - Thu Feb 20 14:07:23 2025 Completed Stage... This is a CDB instance. Hence not checking duplicate data files.Phase 3: RMAN Backup of Source Database
3.1 Take RMAN Backup
[oracle@fbstest backup]$ . cdbfbs_fbstest.env [oracle@fbstest backup]$ rman target /RUN { ALLOCATE CHANNEL c1 TYPE DISK; ALLOCATE CHANNEL c2 TYPE DISK; BACKUP AS COMPRESSED BACKUPSET FULL FILESPERSET 10 FORMAT '/u01/backup/FBS_D_%s_%p_%t.bak' DATABASE; BACKUP AS COMPRESSED BACKUPSET FILESPERSET 10 FORMAT '/u01/backup/FBS_A_%s_%p_%t.bak' ARCHIVELOG ALL SKIP INACCESSIBLE; BACKUP FORMAT '/u01/backup/FBS_C_%s_%p_%t.bak' CURRENT CONTROLFILE; RELEASE CHANNEL c1; RELEASE CHANNEL c2; }3.2 Compress and Copy Source Binaries
Database Binaries:
[oracle@fbstest db]$ tar -zcvf /u01/backup/db_19c.tar.gz apps_stApplication Binaries:
[applmgr@fbstest FBS]$ tar -zcvf /u01/backup/appp_ebs121_19c.tar.gz appsPhase 4: Application Tier Pre-Clone
4.1 Run adpreclone.pl on Application Tier
[applmgr@fbstest ~]$ . APPSFBS_fbstest.env [applmgr@fbstest ~]$ perl $AD_TOP/bin/adpreclone.pl appsTierOutput:
Beginning application tier Stage - Thu Feb 20 14:16:37 2025 Completed Stage...Phase 5: Target System Configuration
5.1 Create oraInst.loc File
[root@fbsebs]# cat /etc/oraInst.loc inventory_loc=/u01/app/inventory inst_group=dba5.2 Extract Binaries on Target
Database Binaries:
[oracle@fbsebs 19c]$ pwd /u01/app/FBS/db/tech_st/19c [oracle@fbsebs 19c]$ tar -zxvf /u01/backup/19c_home.tar.gzApplication Binaries:
[applmgr@fbsebs FBS]$ tar -zxvf /u01/backup/appp_ebs121_19c.tar.gz5.3 Create Database Context File
[oracle@fbsebs bin]$ cd /u01/app/FBS/db/tech_st/19c/appsutil/clone/bin/ [oracle@fbsebs bin]$ perl adclonectx.pl contextfile=/u01/app/FBS/db/tech_st/19c/appsutil/FBS_fbstest.xmlProvide the following values:
Target System Hostname: fbsebs Do you want inputs validated (y/n) [n]: n Target System Base Directory: /u01/app/FBS/db Target Instance is RAC (y/n) [n]: n Target System CDB Name: cdbfbs Target System PDB Name: FBS Oracle OS User [oracle]: Oracle OS Group [oinstall]: dba Role separation supported y/n [n]: n Number of DATA_TOP's on Target System [2]: Target System DATA_TOP Directory 1: /u01/app/FBS/db/apps_st/cdbfbs Target System DATA_TOP Directory 2: /u01/app/FBS/db/apps_st/data OSBACKUPDBA group [dba]: OSDGDBA group [dba]: OSKMDBA group [dba]: OSRACDBA group [dba]: Target System RDBMS ORACLE_HOME: /u01/app/FBS/db/tech_st/19c Preserve Display [localhost:10.0] (y/n): n Target System Display [fbsebs:0.0]: Same port values as source (y/n) [y]: n Target System Port Pool [0-99]: 10 New context path: /u01/app/FBS/db/tech_st/19c/appsutil/FBS_fbsebs.xml5.4 Configure Database Tech Stack
[oracle@fbsebs bin]$ export CV_ASSUME_DISTID=OEL7.9 [oracle@fbsebs bin]$ perl adcfgclone.pl dbTechStack /u01/app/FBS/db/tech_st/19c/appsutil/FBS_fbsebs.xml5.5 Generate Listener Configuration
[oracle@fbsebs appsutil]$ export ORACLE_HOME=/u01/app/FBS/db/tech_st/19c [oracle@fbsebs appsutil]$ export PATH=$ORACLE_HOME/perl/bin:$ORACLE_HOME/bin:$PATH [oracle@fbsebs appsutil]$ export LD_LIBRARY_PATH=$ORACLE_HOME:$ORACLE_HOME/lib [oracle@fbsebs appsutil]$ export PERL5LIB=$ORACLE_HOME/perl/lib/5.38.2:$ORACLE_HOME/perl/site_perl/5.38.2:$ORACLE_HOME/appsutil/perl [oracle@fbsebs appsutil]$ export PATH=$ORACLE_HOME/perl:$ORACLE_HOME/perl/lib:$ORACLE_HOME/perl/bin:$PATH [oracle@fbsebs appsutil]$ chmod 755 txkSetCfgCDB.env [oracle@fbsebs appsutil]$ ./txkSetCfgCDB.env -dboraclehome=/u01/app/FBS/db/tech_st/19c [oracle@fbsebs appsutil]$ cd /u01/app/FBS/db/tech_st/19c/appsutil/bin [oracle@fbsebs bin]$ perl txkGenCDBTnsAdmin.pl \ -dboraclehome=/u01/app/FBS/db/tech_st/19c \ -cdbname=cdbfbs \ -cdbsid=cdbfbs \ -dbport=1531 \ -outdir=/u01/app/FBS/db/tech_st/19c/appsutil/log \ -israc=no5.6 Start the Listener
[oracle@fbsebs FBS_fbsebs]$ cd /u01/app/FBS/db/tech_st/19c/appsutil/scripts/FBS_fbsebs/ [oracle@fbsebs FBS_fbsebs]$ ./addlnctl.sh start cdbfbsNote: If the source EBS instance is at the R12.TXK.C.DELTA.12 codelevel, the command may exit with status 1, waiting for the PDB service to start. This error can be ignored as the database is not yet restored.
Phase 6: Database Restore and Recovery
6.1 Prepare Database Initialization Parameters
[oracle@fbsebs dbs]$ cp initcdbfbs.ora initFBS.ora [oracle@fbsebs dbs]$ vi initFBS.oraAdd the following parameters:
DB_FILE_NAME_CONVERT=(+EBS_DATA,+EBS_DATA) LOG_FILE_NAME_CONVERT=(+EBS_DATA,+EBS_DATA) *.local_listener='(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=fbsebs.finsys.co.ke)(PORT=1531)))' *.db_name='FBS'6.2 Create Required Directories
[oracle@fbsebs db]$ mkdir -p /oraapps122/DATABASE/admin/beecdb/adump [oracle@fbsebs db]$ mkdir -p /u01/app/FBS/db/admin/cdbfbs/adump6.3 Start Database in Nomount Mode
[oracle@fbsebs dbs]$ . cdbfbs_fbstest.env [oracle@fbsebs dbs]$ sqlplus '/as sysdba' SQL> startup nomount pfile='/u01/app/FBS/db/tech_st/19c/dbs/initcdbcfbs.ora'6.4 Perform RMAN Duplicate
[oracle@fbsebs dbs]$ rman auxiliary /RUN { ALLOCATE AUXILIARY CHANNEL c1 DEVICE TYPE DISK; ALLOCATE AUXILIARY CHANNEL c2 DEVICE TYPE DISK; DUPLICATE DATABASE TO 'cdbfbs' BACKUP LOCATION '/u01/backup' NOFILENAMECHECK; RELEASE CHANNEL c1; RELEASE CHANNEL c2; }6.5 Open Database
[oracle@fbsebs db]$ sqlplus / as sysdba SQL> startup SQL> select name,open_mode from v$database; NAME OPEN_MODE --------- -------------------- CDBFBS READ WRITE SQL> show pdbs; CON_ID CON_NAME OPEN MODE RESTRICTED ------ ------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 FBS READ WRITE NOPhase 7: Target PDB Configuration
7.1 Verify Services
[oracle@fbsebs db]$ export ORACLE_SID=cdbfbs [oracle@fbsebs db]$ sqlplus / as sysdbaSQL> alter session set container="FBS"; SQL> select count(*) from cdb_services c, service$ s where upper(s.name) = upper('FBS') and s.deletion_date is null and s.name = c.name;7.2 Rename PDB if Required
SQL> alter pluggable database "FBS" close; SQL> alter pluggable database "FBS" unplug into '/u01/app/FBS/db/tech_st/19c/dbs/FBS.xml'; SQL> drop pluggable database "FBS"; SQL> create pluggable database "FBS" using '/u01/app/FBS/db/tech_st/19c/dbs/FBS.xml' NOCOPY SERVICE_NAME_CONVERT=('ebs_FBS','ebs_FBS','FBS_ebs_patch','FBS_ebs_patch'); SQL> alter pluggable database "FBS" open read write;7.3 Save PDB State
SQL> alter pluggable database all open; SQL> alter pluggable database all save state instances=all;7.4 Update Library
[oracle@fbsebs db]$ cd /u01/app/FBS/db/tech_st/19c/appsutil/install/FBS_fbsebs/ [oracle@fbsebs FBS_fbsebs]$ sqlplus / as sysdba SQL> @adupdlib.sql soPhase 8: UTL_FILE_DIR Configuration
8.1 Get Current UTL_FILE_DIR Values
[oracle@fbsebs bin]$ perl /u01/app/FBS/db/tech_st/19c/appsutil/bin/txkCfgUtlfileDir.pl \ -contextfile=/u01/app/FBS/db/tech_st/19c/appsutil/FBS_fbsebs.xml \ -oraclehome=/u01/app/FBS/db/tech_st/19c \ -outdir=/u01/app/FBS/db/tech_st/19c/appsutil/log \ -mode=getUtlFileDir8.2 Create Directory Structures
mkdir -p /u01/app/FBS/db/temp/FBS mkdir -p /u01/app/FBS/db/tech_st/temp/FBS mkdir -p /u01/app/FBS/db/tech_st/19c/appsutil/outbound/FBS_fbsebs mkdir -p /u01/app/FBS/utlfiledir8.3 Set UTL_FILE_DIR Values
[oracle@fbsebs bin]$ perl /u01/app/FBS/db/tech_st/19c/appsutil/bin/txkCfgUtlfileDir.pl \ -contextfile=/u01/app/FBS/db/tech_st/19c/appsutil/FBS_fbsebs.xml \ -oraclehome=/u01/app/FBS/db/tech_st/19c \ -outdir=/u01/app/FBS/db/tech_st/19c/appsutil/log \ -mode=setUtlFileDir8.4 Create Directory Objects
[oracle@fbsebs bin]$ perl /u01/app/FBS/db/tech_st/19c/appsutil/bin/txkCfgUtlfileDir.pl \ -contextfile=/u01/app/FBS/db/tech_st/19c/appsutil/FBS_fbsebs.xml \ -oraclehome=/u01/app/FBS/db/tech_st/19c \ -outdir=/u01/app/FBS/db/tech_st/19c/appsutil/log \ -mode=createDirObject8.5 Sync UTL_FILE_DIR
[oracle@fbsebs bin]$ perl /u01/app/FBS/db/tech_st/19c/appsutil/bin/txkCfgUtlfileDir.pl \ -contextfile=/u01/app/FBS/db/tech_st/19c/appsutil/FBS_fbsebs.xml \ -oraclehome=/u01/app/FBS/db/tech_st/19c \ -outdir=/u01/app/FBS/db/tech_st/19c/appsutil/log \ -mode=syncUtlFileDir \ -skipautoconfig=yesPhase 9: Application Tier Configuration
9.1 Configure Application Tier
[applmgr@fbsebs bin]$ cd /u01/app/FBS/apps/apps_st/comn/clone/bin/ [applmgr@fbsebs bin]$ perl adcfgclone.pl appsTierProvide the following values:
Target System Hostname: fbsebs Target System Database SID: FBS Target System Database Server Node: fbsebs Target System Database Domain Name: finsys.co.ke Target System Base Directory: /u01/app/FBS Target System Tools ORACLE_HOME: /u01/app/FBS/apps/tech_st/10.1.2 Target System Web ORACLE_HOME: /u01/app/FBS/apps/tech_st/10.1.3 Target System APPL_TOP: /u01/app/FBS/apps/apps_st/appl Target System COMMON_TOP: /u01/app/FBS/apps/apps_st/comn Target System Instance Home: /u01/app/FBS/inst Target System Root Service: enabled Target System Web Entry Point Services: enabled Target System Web Application Services: enabled Target System Batch Processing Services: enabled Target System Other Services: disabled Preserve Display (y/n): n Target System Display: fbsebs:0.0 Continue with existing directory (y/n): y Same port values as source (y/n) [y]: n Target System Port Pool [0-99]: 10 Target System proxy port [80]:9.2 Start Application Services
[applmgr@fbsebs scripts]$ adstrtal.sh apps/appsNote: If you encounter a listener error, this can be resolved by:
Stopping all services:
adstpall.sh apps/appsRestarting all services:
adstrtal.sh apps/appsPhase 10: Post-Clone Validation
10.1 Clean Concurrent Manager Setup
[applmgr@fbsebs bin]$ sqlplus apps/apps SQL> exec fnd_conc_clone.setup_clean;10.2 Run AutoConfig
Database Tier:
[oracle@fbsebs scripts]$ ./adautocfg.shApplication Tier:
[applmgr@fbsebs scripts]$ ./adautocfg.sh10.3 SQL*Net Configuration
For E-Business Suite Release 12.1, ensure the following settings:
-- If SEC_CASE_SENSITIVE_LOGON is FALSE SQLNET.ALLOWED_LOGON_VERSION_SERVER = 8 -- If SEC_CASE_SENSITIVE_LOGON is TRUE SQLNET.ALLOWED_LOGON_VERSION_SERVER = 10Troubleshooting Common Issues
Issue 1: AutoConfig Listener Errors
Error:
grep: /u01/app/FBS/inst/apps/FBS_fbsebs/ora/10.1.2/network/admin/listener.ora: No such file or directorySolution: Stop and restart application services:
adstpall.sh apps/apps adstrtal.sh apps/appsIssue 2: ETCC Warnings During Configuration
Error: ETCC warning messages during dbTechStack configuration
Solution: These warnings can be safely ignored during the initial configuration. ETCC checks should be run after the clone is complete.
Issue 3: PDB Service Not Starting
Error: Listener waiting for PDB service
Solution: This is expected behavior when the database is not yet restored. Resume the process after database restoration is complete.
References
Oracle Support Document 406982.1: "Cloning Oracle Applications Release 12 with Rapid Clone"
Oracle E-Business Suite Installation Guide: Release 12.1
Oracle Database 19c Upgrade Guide
Conclusion
This comprehensive guide covers the complete cloning process for Oracle E-Business Suite R12.1.3 with a 19c database. Following these steps ensures a successful clone with minimal issues. Always test the cloned environment thoroughly before using it in production.
Key Success Factors:
Proper patch application on source system before cloning
Complete RMAN backup with all required datafiles and archive logs
Correct directory structures on target system
Proper configuration of both database and application tiers
Thorough validation after completion
No comments:
Post a Comment