11i Cloning Procedure - Non-RAC
11i Cloning Procedure - Non-RAC
DOMINO
Version History
Contents
1 Introduction 2
1.1 Purpose 2
1.2 Assumptions 2
1.3 Scope and Application 2
1.4 Related Documents 2
2 Cloning Procedure 5
2.1 Prepare the Source System for cloning 5
2.2 Copy the Source System to the Target System 7
2.3 Configure the target System 7
2.4 Finishing Tasks 24
1 Introduction
.1.1 Purpose
This document provides the steps necessary to clone 11i Oracle eBusiness Suite
Production environment to a development / test environment.
.1.2 Assumptions
The term ‘Applications tier’ refers to any server that contains an $APPL_TOP
directory structure.
This clone has been based around the TEST environment (non-RAC) clone and will
need amending for a differently named environment.
Please do not copy and paste commands with the – in but formulate the
commands manually, as the MS word – is completely different to the
Linux -, and treated differently.
2 Cloning Procedure
This section provides the steps necessary to clone the production Oracle
eBusiness Suite environment to the TEST.
1. Login to oraprodapps5 as the applprod user and run adpreclone for the
application tier:
perl –version
This is perl, version 5.005_03 built for i686-linux
Copyright 1987-1999, Larry Wall
cd $OAD_TOP/admin/scripts/PROD_oraprodapps5
perl adpreclone.pl appsTier
Running Rapid Clone with command...
perl /u02/oracle/prod/appl/ad/11.5.0/bin/adclone.pl
java=/usr/java/j2sdk1.4.2_12 mode=stage stage=/u02/oracle/prod/comn/clone
component=appsTier method=CUSTOM
appctx=/u02/oracle/prod/appl/admin/PROD_oraprodapps5.xml showProgress
Completed Stage...
Fri Jun 15 11:17:31 2007
2. Login to oraprodapps4 as the applprod user and run adpreclone for the
application
tier:
cd $OAD_TOP/admin/scripts/PROD_oraprodapps4
1. Login to oraproddb3 as the oraprod user and run adpreclone for database
tier.
cd $ORACLE_HOME/appsutil/scripts/PROD1_oraproddb3
perl adpreclone.pl dbTier
oraproddb3.dps.local:PROD1:oraprod>perl adpreclone.pl dbTier
Running Rapid Clone with command...
perl /u02/oracle/prod/9.2.0.5/appsutil/bin/adclone.pl
java=/u02/oracle/prod/9.2.0.5/jre/1.4.2 mode=stage
stage=/u02/oracle/prod/9.2.0.5/appsutil/clone component=dbTier method=CUSTOM
dbctx=/u02/oracle/prod/9.2.0.5/appsutil/PROD1_oraproddb3.xml showProgress
Completed Stage...
Fri Jun 15 12:16:35 2007
If the files are copied manually, please ensure the original directory and
file permissions are retained by using either of the following. Please do not
copy and paste the below as the - (hyphen) is usually converted in word
to a:-
scp –rp xxx yyy - for copying remotely across
servers – Do NOT COPY & PASTE THIS COMMAND. The MS word – is
different to the Linux command line –
It is imperative that the user and group permissions are the same
on the target system as the source system, as there a number of
files and directories that are written to by the oracle user (which
is a member of the dba group).
1. The following restore must be the first restore to be run and has to be
done outside of Domino Working hours (weekdays between 00:01 and
06:00, or weekends). Copy the oracle database files from oraproddb3 to
On completion of the above file system restores, please change the ownership
of the directories as the root owner:-
chown -R oratest:dba /u04/oradata/test
2. Copy the 9i oracle home from oraproddb3 to the corresponding server and
directory structure for the target environment database server, for TEST
oradevdb1 /u02 9i oracle home :
• /u01/oracle/prod/9.2.0.5
On completion of the above file system restores, please change the ownership
of the directories as the root owner:-
chown -R oratest:dba /u02/oracle/test/9.2.0.5
On completion of the above file system restores, please change the ownership
of the directories as the root owner:-
chown -R appltest:dba ora /u02/oracle/test/ora
chown -R appltest:dba ora /u02/oracle/test/comn
chown -R appltest:dba ora /u02/oracle/test/appl
NOTE:- Now all files have been restored, please continue the clone
process as
normal.
1. Ensure the file permissions are set so that the oratest user is the owner of
the 920 ORACLE_HOME (Oradevdb1) and /u04/oradata/test directory
2. Login to Oradevdb1 as the oratest user and run the adcdgclone script for
the database tier:
3. Recreate Symbolic Links
cd /u02/oracle/test/9.2.0.5
ls -l JRE
lrwxrwxrwx 1 503 dba 34 May 17 14:55 JRE ->
/u02/oracle/prod/9.2.0.5/jre/1.1.8
rm JRE
ln -s /u02/oracle/test/9.2.0.5/jre/1.1.8 JRE
ls -l JRE
4. cd /u02/oracle/test/9.2.0.5/appsutil/clone/bin
perl adcfgclone.pl dbTier
Parameter Value
a. Problem -You may receive create controlfile error, but checking alert log it
has been
created successfully.
If the above errors occur:- re-run dbTechStack clone on this node after the
error, repeating the prcoess as above:-
Solution:-
cd /u02/oracle/test/9.2.0.5/appsutil/clone/bin
perl adcfgclone.pl dbTechStack
f. Amend the init.ora file values which are changed by the clone.
cd $ORACLE_HOM/dbs
vi $ORACLE_HOME/dbs/initTEST.ora
Change O7_DICTIONARY_ACCESSIBILITY from TRUE to FALSE
Ensure db_cache_size is set to 600M
Remove the first entry of /usr/tmp from the parameter UTL_FILE_DIR
Change from:-
utl_file_dir =
/usr/tmp,/usr/tmp/TEST,/u02/oracle/test/9.2.0.5/appsutil/outbound/TEST_or
adevdb1,/usr/tmp
Change to:-
utl_file_dir
=/usr/tmp/TEST,/u02/oracle/test/9.2.0.5/appsutil/outbound/TEST_oradevdb
1,/usr/tmp
NB:- The instance will need to be bounced for these changes to take effect.
sqlplus
/ as sysdba
shutdown immediate;
startup;
7. a. Tidy up the environment and run the following command as the APPS
database user from SQLPLUS:
.Clear Scheduled requests and the environment set-up:-
sqlplus apps/<apps_password>
truncate table applsys.fnd_concurrent_processes;
truncate table applsys.fnd_concurrent_requests;
truncate table applsys.FND_ENV_CONTEXT;
Disable customized alerts. Connect to sqlplus as the apps user:-
sqlplus apps/<apps_password>
update alr_alerts
set enabled_flag = 'N'
where alert_name like 'Dom%';
Disable Shipping Printers as apps user:-
update WSH_REPORT_PRINTERS
set enabled_flag='N';
9 . Run autoconfig
cd $ORACLE_HOME/appsutil/scripts/TEST_oradevdb1
./adautocfg.sh
On completion of the above and before continuing, please ensure section 2.2 file
restores has been completed.
1. Ensure the file permissions are set so that the appltest user is the owner
of the APPL_TOP, 806 ORACLE_HOME, IAS_ORACLE_HOME, COMN_TOP
directories.
2. Login to oradevapps1 as the appltest user and run the adcfgclone script for
the application tier:
3. Recreate Symbolic Links
cd /u02/oracle/test/ora/iAS
rm 6iserver
ln -s /u02/oracle/test/ora/8.0.6 6iserver
cd /u02/oracle/test/appl/ar/11.5.0/reports/NL
rm ARXSGPO.rdf ARDLP.rdf
ln -s
/u02/oracle/test/appl/ar/11.5.0/reports/NL/XXDOMI_EU_ARDLP.rdf
ARDLP.rdf
ln -s
/u02/oracle/test/appl/ar/11.5.0/reports/NL/XXDOMI_EU_ARXSGPO.r
df ARXSGPO.rdf
cd /u02/oracle/test/appl/ar/11.5.0/reports/US
rm ARXSGPO.rdf ARDLP.rdf
ln -s
/u02/oracle/test/appl/ar/11.5.0/reports/US/XXDOMI_EU_ARXSGPO.r
df ARXSGPO.rdf
ln -s
/u02/oracle/test/appl/ar/11.5.0/reports/US./XXDOMI_EU_ARDLP.rdf
ARDLP.rdf
cd /u02/oracle/test/appl/ar/11.5.0/reports/D
rm ARXSGPO.rdf ARDLP.rdf
ln -s
/u02/oracle/test/appl/ar/11.5.0/reports/D/XXDOMI_EU_ARXSGPO.rdf
ARXSGPO.rdf
ln -s
/u02/oracle/test/appl/ar/11.5.0/reports/D/XXDOMI_EU_ARDLP.rdf
ARDLP.rdf
cd /u02/oracle/test/appl/ar/11.5.0/reports/E
rm ARXSGPO.rdf ARDLP.rdf
ln -s
/u02/oracle/test/appl/ar/11.5.0/reports/E/XXDOMI_EU_ARXSGPO.rdf
ARXSGPO.rdf
ln -s
/u02/oracle/test/appl/ar/11.5.0/reports/E/XXDOMI_EU_ARDLP.rdf
ARDLP.rdf
cd /u02/oracle/test/appl/ar/11.5.0/reports/F
rm ARXSGPO.rdf ARDLP.rdf
ln -s
/u02/oracle/test/appl/ar/11.5.0/reports/F/XXDOMI_EU_ARXSGPO.rdf
ARXSGPO.rdf
ln -s
/u02/oracle/test/appl/ar/11.5.0/reports/F/XXDOMI_EU_ARDLP.rdf
ARDLP.rdf
cd /u02/oracle/test/appl/xxdomi/11.5.0/bin
rm XXDOMI_SF_ACCTEXTRACT XXDOMI_SF_ACCTUPLOAD
XXDOMI_SF_DATACONV XXDOMI_SF_DATACONV
XXDOMI_SF_QOTEXTRACT
ln -s /u02/oracle/test /appl/fnd/11.5.0/bin/fndcpesr
XXDOMI_SF_ACCTEXTRACT
ln -s /u02/oracle/test/ appl/fnd/11.5.0/bin/fndcpesr
XXDOMI_SF_ACCTUPLOAD
ln -s /u02/oracle/test /appl/fnd/11.5.0/bin/fndcpesr
XXDOMI_SF_DATACONV
ln -s /u02/oracle/test /appl/fnd/11.5.0/bin/fndcpesr
XXDOMI_SF_QOTEXTRACT
4.
cd /u02/oracle/test/comn/clone/bin
perl adcfgclone.pl appsTier
Parameter Value
Parameter Value
Solution:-
Login as oratest on oradevdb1 and re-run autoconfig
cd $ORACLE_HOME/appsutil/scripts/TEST_oradevdb1
./ adautocfg.sh
enter apps password
Log out of oradevapps1 as appltest and log back in again, to pick up the
new environment variables. Repeat the above adcfgclone steps, entering
parameters as above:-
cd /u02/oracle/test/comn/clone/bin
perl adcfgclone.pl appsTier
b. Problem -The following errors may occur, cannot connect on port 1522.
Re-run clone clone process as below and it should complete successfully:-
Solution:-
Create a dummy TEST_oradevapps1.xml from PROD_oraprodapps5.xml
cd /u02/oracle/test/appl/admin
cp –p PROD_oraprodapps5.xml TEST_oradevapps1.xml
Edit this file and nsure you change all PROD related entries to UAT.
i.e.
1st change oraprodapps to oradevapps
2nd oraproddb to oradevdb
3rd oraprod to oratest
4th applprod to appltest
5th PROD to TEST
6th prod to test
Log out of oradevapps1 as appltest and log back in again, to pick up the
new environment variables. Repeat the above adcfgclone steps, entering
parameters as above:-
cd /u02/oracle/test/comn/clone/bin
perl adcfgclone.pl appsTier
c. Problem - If the adcfgclone.pl process fails first time for no obvious reason,
please
Solution:- rerun the script:- perl adcfgclone.pl appsTier using the
parameters as illustrated above.
cd /u02/oracle/test/comn/clone/bin
perl adcfgclone.pl appsTier
f. Check contents of the following file, all TIER% parameters are still
set to yes:-
view $APPL_TOP/admin/adconfig.txt
2. Run txkshohm to make a local config top (/var/opt/oracle/TEST) & share the
apps filesystem. On oradevapps1 as the appltest user:-
cd $FND_TOP/patch/115/bin
echo $ORACLE_HOME
echo $IAS_ORACLE_HOME
echo $CONTEXT_FILE
cdapps
perl adpreclone.pl appsTier
Check the log file for errors (see message “Log file located at…” for
location)
c. Use the following values for the share of the application file system on
oradevdb1
echo $CONTEXT_FILE
echo $AD_TOP/bin
echo $FND_TOP/patch/115/bin
echo $AU_TOP/perl
echo $ORACLE_HOME
echo $IAS_ORACLE_HOME
Parameter Value
Parameter Value
Parameter Value
c. Configure the xml file to ensure the following settings are set
cp –p $CONTEXT_FILE $APPL_TOP/admin/TEST_oradevdb1.xml.bkp
vi $CONTEXT_FILE
h. Log in to the primary node and re-run autconfig now that the secondary
node has
been configured. Login to oradevapps1 as appltest
cdapps
./adautocfg.sh
Enter <apps_password>
2. Check that it is possible to login to both the normal login page and Oracle
Applications Manager (OAM) using the following URLs (use a user with
System Administrator responsibility):
http://oradevdb1.dps.local:8002/oa_servlets/AppsLogin
http:// oradevdb1.dps.local:8002/servlets/weboam/oam/oamLogin
• PLSQL Ping
• JSP Ping
• Servlet Ping
Any error messages will require further investigation and the underlying
problem resolved before continuing.
a. The following sql should work for updating the primary / secondary
nodes (rather than manually through System administrator -> Define
Managers) , still need to manually change the managers with the node
name in the title:-
Select distinct concurrent_queue_name||’ ‘||node_name||’ ‘||
node_name2
From fnd_concurrent_queues;
If the nodes are still set to oraproddb3 and oraproddb4, run the following:-
update FND_CONCURRENT_QUEUES set node_name = 'ORADEVDB1'
where node_name in ('ORAPRODDB3','ORAPRODDB4'));
update FND_CONCURRENT_QUEUES set node_name2 = null
where node_name2 in ('ORAPRODDB3','ORAPRODDB4');
b. Through the application, Change any manager title / names with the
server name
included as part of the title from oraproddb3 to oradevdb1
Navigate to System Administrator -> Concurrent -> Manager -> Define
Query all managers and change the title of any managers with oraproddb3
to
oradevdb1.
c. Through the application, check the internal monitor for oradevdb1 has
a workshift
defined, it will likely have been lost during the clone.
Navigate to System Administrator -> Concurrent -> Manager -> Define
Query Internal Monitor%ORADEVDB1
Choose Workshifts, if there is none defined:-
Choose Workshift Standard, Tab through Description, Add Processses of 1.
Save
Log back in to the application and check that the manager processes are
all running and that the internal monitor: ORADEVDB1 has started
automatically.
#
# The APPLFENV variable is the filename of this file.
# If you rename this file, you should change this value.
#
#
# XXDOMI_TOP is the top-level directory for Domino Customization Application.
#
XXDOMI_TOP="/u02/oracle/test/appl/xxdomi/11.5.0"
export XXDOMI_TOP
#
# VERISIGN_TOP is the top-level directory for PayPay Payflow.
#
VERISIGN_TOP="/u02/oracle/test/comn/java/oracle/apps/verisign"
export VERISIGN_TOP
OWNER||''||DIRECTORY_NAME||''||DIRECTORY_PATH
--------------------------------------------------------------------------------
SYS APPS_DATA_FILE_DIR /u01/oracle/test/9.2.0.5/appsutil/outbound/TEST1_oratestdb1
SYS ECX_UTL_LOG_DIR_OBJ /usr/tmp
SYS ECX_UTL_XSLT_DIR_OBJ /usr/tmp
SYS EXELOUT /u02/oracle/prod/appl/xxdomi/11.5.0/exel
SYS GSKOUT /u02/oracle/prod/appl/xxdomi/11.5.0/gsk
SYS MECTEC /u02/oracle/prod/appl/xxdomi/11.5.0/mectec
SYS RMOUT /u02/oracle/prod/appl/xxdomi/11.5.0/royalmail
SYS TARGETOUT /u02/oracle/prod/appl/xxdomi/11.5.0/targetout
SYS XXDOMIMWA /u02/oracle/test/appl/11.5.0/mwa_labels
SYS XXDOMISQL /u02/oracle/prod/appl/xxdomi/11.5.0/sql
SYS javatmpdir0 /u01/oracle/prod/9.2.0.5/javavm/admin/
OWNER||''||DIRECTORY_NAME||''||DIRECTORY_PATH
--------------------------------------------------------------------------------
SYS APPS_DATA_FILE_DIR
/u02/oracle/test/9.2.0.5/appsutil/outbound/TEST_oradevdb1
SYS ECX_UTL_LOG_DIR_OBJ /usr/tmp
SYS ECX_UTL_XSLT_DIR_OBJ /usr/tmp
SYS EXELOUT /u02/oracle/test/appl/xxdomi/11.5.0/exel
SYS GSKOUT /u02/oracle/test/appl/xxdomi/11.5.0/gsk
SYS MECTEC /u02/oracle/test/appl/xxdomi/11.5.0/mectec
SYS RMOUT /u02/oracle/test/appl/xxdomi/11.5.0/royalmail
SYS TARGETOUT /u02/oracle/test/appl/xxdomi/11.5.0/targetout
SYS XXDOMIMWA /u02/oracle/test/appl/xxdomi/11.5.0/mwa_labels
SYS XXDOMISQL /u02/oracle/test/appl/xxdomi/11.5.0/sql
SYS javatmpdir0 /u01/oracle/prod/9.2.0.5/javavm/admin/
NOTE:- If the clone is of either the DEVY or DEVX instance, please try the following port range:-
DEVY Dispatcher Port: 2600
DEVY Ports: 2610,2620,2630,6310,3620,3630
DEVX Dispatcher Port:- 2500
DEVX Ports:- 2510,2520,2530,3510,3520,3530
Edit $MWA_TOP/secure/mwa.cfg
mwa.DbcFolder=/u02/oracle/test/appl/fnd/11.5.0/secure
mwa.DbcFile=oradevdb1_test
mwa.logdir=/u02/oracle/test/comn/admin/log/TEST_oradevapps1
mwa.TelnetPortNumber=2310,2320,2330,3310,3320,3330
mwa.Dispatcher=oradevapps1.dps.local:2400
mwa.ActivateLOVByEnter=TRUE
mwa.TelnetServer=oradevapps1.dps.local:2310;2320;2330;3310;3320;3330
mwa.WapHost = oradevapps1.dps.local
mwa.WapPort = 8001
cd $MWA_TOP/secure
Copy the files device.cfg deviceIP.ini mwa.cfg to
$MWA_TOP/admin/template/custom
cp -p device.cfg $MWA_TOP/admin/template/custom
cp –p deviceIP.ini $MWA_TOP/admin/template/custom
cp -p mwa.cfg $MWA_TOP/admin/template/custom
Change log file names, temporary file names and possibly port numbers
in the following files:
Change any occurrences of prod to test
Change all port numbers to the relevant port numbers for TEST
Change the directory structure if required (u02)
If there is a problem starting the dispatcher on port 2400, try 2300 instead.
$MWA_TOP/bin/mwa_start_dispatcher.sh
$MWA_TOP/bin/mwa_start_on_reboot.sh
$MWA_TOP/bin/mwa_stop_all.sh
$MWA_TOP/bin/mwa_stop_dispatcher.sh
$MWA_TOP/bin/mwa_svr.sh
cd /var/opt/oracle/TEST/iAS/Apache/Jserv/etc
Add the following lines to the bottom of the file, if they do not
currently exist:-
vi formservlet.ini
# Begin Customization
XXDOMI_TOP=/u02/oracle/test/appl/xxdomi/11.5.0
# End Customization
Add the following lines to the bottom of the file, if they do not
currently exist:-
vi jserv.properties
# Begin customizations
wrapper.bin.parameters=-DDIAGNOSTIC_SECURITY_SWITCH=OFF
wrapper.classpath=/u02/oracle/test/comn/java/support_addon.zip
wrapper.classpath
=/u02/oracle/test/ora/iAS/Apache/Jserv/servlets/CZ_FC.jar
#wrapper.classpath=$JAVA_TOP/ssl/javax-ssl-1_2.jar
#wrapper.classpath=$JAVA_TOP/ssl/jssl-1_2.jar
#wrapper.bin.parameters=-DAFLOG_ENABLED=TRUE
wrapper.bin.parameters=-DAFLOG_MODULE=iby%
wrapper.bin.parameters=-DAFLOG_LEVEL=STATEMENT
wrapper.bin.parameters=-DAFLOG_FILENAME=/usr/tmp/PROD/iby.log
#Begin Modification for VeriSign BEP Servlet Installation
wrapper.classpath=/u02/oracle/test/appl/iby/11.5.0/lib/Verisign.jar
#Include the XML xerces parser jar files in the CLASSPATH.
wrapper.classpath=/u02/oracle/test/appl/iby/11.5.0/lib/xercesImpl.jar
wrapper.classpath=/u02/oracle/test/appl/iby/11.5.0/lib/xml-apis.jar
#Enable iPayment extensibility in the CLASSPATH.
wrapper.classpath=/u02/oracle/test/ora/iAS/Apache/Jserv/servlets/ibye
xtend
wrapper.classpath=/u02/oracle/test/ora/iAS/Apache/Jserv/servlets
#End Modification for VeriSign BEP Servlet Installation
# End customizations
Add the following lines to the bottom of the file, if they do not
currently exist:-
vi zone.properties
# Begin customizations
#---------------------------------------------------------------
#-------Domino iPayment BiBit Servlet---------------------
servlet.oramipp_xxx.code=oracle.apps.xxiby.bibit.BibitServlet
#---------------------------------------------------------------
#---------------------------------------------------------------
#-------PayPal VeriSign Payment Services Servlet---------------------
#---------------------------------------------------------------
servlets.startup=oramipp_vps
servlet.oramipp_vps.code=com.verisign.iPayment.bizcomp.vpsProcess
servlet.oramipp_vps.initArgs=properties=/u02/oracle/test/ora/8.0.6/ve
risign/vpsipayment.properties,debug=true,logfile=/u02/oracle/test/app
l/iby/11.5.0/log/ibyvpsserv.log,xmlfile=/u02/oracle/test/ora/8.0.6/ve
risign/param.xml
# End customizations
rm –rf PROD_*
cd $OAD_TOP/admin/log
rm –rf PROD_*
cd $OAD_TOP/admin/out
rm –rf PROD_*
cd $OAD_TOP/admin/install
rm –rf PROD_*
cd $OAD_TOP/clone/context/apps
rm –rf PROD_*.xml
cd $OAD_TOP/portal
rm –rf PROD*
cd $OAD_TOP/rgf
rm –rf PROD_*
cd $OAD_TOP/temp
rm –rf PROD_*
cd $ORACLE_HOME
rm –rf PROD*env*
cd $APPL_TOP
rm –rf PROD*env*
cd $APPL_TOP/admin/out
rm –rf PROD_*
cd $APPL_TOP/admin
rm –rf PROD_*
cd $ORACLE_HOME
rm –rf *PROD*env*
cd $ORACLE_HOME/dbs
rm –rf initPROD*ora*
cd $ORACLE_HOME/admin
rm –rf PROD*
cd $ORACLE_HOME/appsutil/out/
rm –rf PROD*
cd $ORACLE_HOME/appsutil/log
rm –rf PROD*
cd $ORACLE_HOME/appsutil/scripts
rm –rf PROD*
cd $ORACLE_HOME/appsutil/template/dbs
rm –rf PROD*
cd $ORACLE_HOME/appsutil
rm –rf PROD*xml*
cd $ORACLE_HOME/appsutil/install
rm -rfPROD*
Repeat on oratestdb2
cd $COMMON_TOP/admin
cd log
rm –fr PROD_oraproddb1
rm –fr PROD_oraproddb2
cd ../out
rm –fr PROD_oraproddb1
rm –fr PROD_oraproddb2
3. Change apps password in the below files on the database and application
server.
a /var/opt/oracle/TEST/iAS/Apache/modplsql/cfg/wdbsvr.app
b /var/opt/oracle/TEST/8.0.6/reports60/server/CGIcmd.dat
5. Check connection via sqlplus to the following users with the new passwords:
sqlplus apps/<new_apps_password
connect system/<new_system_password>
connect ar/<new_ar_password>
connect outln/<new_outln_password>
connect xxdomi/<new_xxdomi_password>