Cloning an Oracle E-Business Suite (EBS) R12.2 environment is a standard task for any Oracle Apps DBA. However, when Enterprise Command Center (ECC) is integrated into the architecture, standard adcfgclone routines are not enough.
ECC operates on an independent WebLogic domain and uses specialized search cores (Solr/ZooKeeper). If you clone the EBS backend without cloning and synchronizing the ECC tier, your dashboards will fail due to broken token handshakes, dropped JDBC connection pools, or stale search indices. Below is the complete step-by-step runbook for cloning an integrated EBS and ECC stack.
📌 Architecture & Target Parameters
Before executing commands, determine your source and target mapping:
| Parameter | Source Node | Target Node |
|---|---|---|
| EBS SID | PROD |
TEST |
| Database Host | proddb.domain.com |
testdb.domain.com |
| Apps Tier Host | prodapps.domain.com |
testapps.domain.com |
| ECC Server Host | prodecc.domain.com |
testecc.domain.com |
| ECC Base Path | /u01/oracle/ecc |
/u01/oracle/ecc |
| WebLogic Port | 7001 / 7002 |
7001 / 7002 |
Phase 1: Source Environment Preparation (Pre-Clone)
1. Execute Pre-Clone on EBS DB & Apps Tiers
On Database Tier (run as oracle):
cd $ORACLE_HOME/appsutil/scripts/$CONTEXT_NAME
perl adpreclone.pl dbTier
On Apps Tier Run File System (run as applmgr):
source <EBS_BASE>/EBSapps/env/env.env run
cd $ADMIN_SCRIPTS_HOME
perl adpreclone.pl appsTier
2. Take an ECC Tier Backup
Per MOS Doc ID 2495053.1 (Appendix D), use the packaged utility to archive metadata and domain configs:
cd $ECC_BASE/Oracle/quickInstall
# 1. Stop ECC services
./stopAllEcc.sh
# 2. Run backup archive
./backup.sh
# 3. Restart source services once completed
./startAllEcc.sh
Verification: Confirm that an archive namedbackup_<timestamp>.tar.gzhas been generated in$ECC_BASE/Oracle/quickInstall/.
Phase 2: Replicate Files & Configure Target EBS
- Restore or copy database files to
testdb.domain.com. - Copy the run file system (
EBSapps) totestapps.domain.com. - Copy the ECC backup archive to the target ECC node:
rsync -avzP $ECC_BASE/Oracle/quickInstall/backup_* \ oracle@testecc.domain.com:$ECC_BASE/Oracle/quickInstall/
Configure Cloned DB and Application Nodes
On Target DB Tier:
cd $ORACLE_HOME/appsutil/clone/bin
perl adcfgclone.pl dbTier
On Target Apps Tier:
cd $COMMON_TOP/clone/bin
perl adcfgclone.pl appsTier
Clean up obsolete FND nodes in Target DB:
sqlplus apps/<apps_password>
EXEC FND_CONC_CLONE.SETUP_CLEAN;
COMMIT;
EXIT;
Execute AutoConfig across all target EBS nodes.
Phase 3: Restore and Configure Target ECC Tier
1. Update ECC Connection Properties
Edit $ECC_BASE/Oracle/quickInstall/EccConfig.properties on testecc.domain.com to point to the new target database and ECC hostname:
# Target Database Details
DATABASE_HOSTNAME=testdb.domain.com
DATABASE_PORT=1521
DATABASE_SERVICE_NAME=TEST
# Target ECC Host Details
ECC_HOSTNAME=testecc.domain.com
ECC_MANAGED_SERVER_PORT=7001
2. Run Restore Scripts & Start Services
cd $ECC_BASE/Oracle/quickInstall
./createEnvFile.sh
./envSetup.sh
./startAllEcc.sh
Verification: Log into the WebLogic Admin Console at http://testecc.domain.com:7001/console. Go to Services > Data Sources > ebsDB > Monitoring > Testing and ensure Test Data Source returns Test Succeeded.
Phase 4: Establish EBS-to-ECC Trust Handshake
1. Generate Target DBC File
On the target EBS Apps Tier (run as applmgr):
source <EBS_BASE>/EBSapps/env/env.env run
java oracle.apps.fnd.security.AdminDesktop apps/<APPS_PASSWORD> \
CREATE NODE_NAME=testecc.domain.com \
DBC=$FND_SECURE/TEST.dbc
Transfer this file to the ECC server:
scp $FND_SECURE/TEST_testecc.domain.com.dbc \
oracle@testecc.domain.com:$ECC_BASE/Oracle/quickInstall/connection.dbc
2. Update Context Variable & Profile Option
- In the target EBS application context file, update:
<s_ecc_web_host>http://testecc.domain.com:7001</s_ecc_web_host> - Run AutoConfig:
$ADMIN_SCRIPTS_HOME/adautocfg.sh. - In EBS, verify the site-level profile option ECC: External Web URL points to
http://testecc.domain.com:7001.
Phase 5: Reset Stale Metadata & Run Full Data Load
To avoid JobId -> -1 errors caused by source database tracking flags, reset the load metadata in SQL*Plus as APPS:
EXEC fnd_ecc_util.reset_data_load(p_application_short_name => 'ALL');
COMMIT;
Submit the concurrent request from EBS:
- Program: Enterprise Command Center Data Load
- System Name:
EBS - Application Name:
ALL(or select a single application, e.g.,AP) - Load Type:
FULL_LOAD - Reset Data:
True
🛠️ Common Post-Clone Troubleshooting
- OutOfMemoryError during full load: Increase Java heap settings (
-Xmsand-Xmx) in$ECC_BASE/Oracle/quickInstall/envSetup.shand restart ECC. - Invalid Security Handshake / Token Issues: Verify that
FND_NODEShas the target ECC hostname registered in uppercase format. - Solr Lock Errors: Stop ECC, clear lingering core locks under
$ECC_BASE/Oracle/ecc_server/solr/server/solr/cores/*, and restart the ECC services.
No comments:
Post a Comment