I am covering the Internal Cloning Process which you will not get eaily on the net. Generally you find the steps for cloning like run adpreclone on apps and db tier then copy the file sytem to Target then run adcfgclone on apps tier and db Tier.
What happens when you run adpreclone and adcfgclone. The below steps give you better understanding and enhance your troubleshooting skills.
When you run this commnad adpreclone.pl dbTier . This will run in two steps Techstack and database.
Techstack:
It will create following directories in the ORACLE_HOME/appsutil/clone
Jlib, db, data where “Jlib” relates to libraries “db” will contain the techstack information, “data” will contain the information related to datafiles and required for cloning.
Creates driver files at ORACLE_HOME/appsutil/driver/instconf.drv
Converts inventory from binary to xml, the xml file is located at $ORACLE_HOME/appsutil/clone/context/db/Sid_context.xml
Prepare database for cloning:
This includes creating datbase control file script and datafile location information file at
$ORACLE_HOME/appsutil/template
adcrdbclone.sql, dbfinfo.lst
Generates database creation driver file at ORACLE_HOME/appsutil/clone/data/driver
data.drv
Copy JDBC Libraries at ORACLE_HOME/appsutil/clone/jlib/classes12.jar and appsoui
When Running adpreclone appsTier
This will create stage directory at $COMMON_TOP/clone. This also run in two steps.
Techstack:
Creates template files for
Oracle_iAS_Home/appsutil/template
Oracle_806_Home/appsutil/template
Creates Techstack driver files for
IAS_ORACLE_HOME/appsutil/driver/instconf.drv
806_ORACLE_HOME/appsutil/driver/instconf.drv
APPL_TOP preparation:
-It will create application top driver file$COMMON_TOP/clone/appl/driver/appl.drv
-Copy JDBC libraries$COMMON_TOP/clone/jlib/classes111.zip
Now Shutdown all the services of Application and database for Copy the file System to target location
Configuring the target system
Once it is done . Run as below adcfclone.pl for apps Tier and dbTier.
On database side:
cd $ORACLE_HOME/appsutils/clone/binperl adcfgclone.pl dbTier pwd=apps
This will use the templates and driver files those were created while running adpreclone.pl on source system and has been copied to target system.
Following scripts are run by adcfgclone.pl dbTier for configuring techstack
adchkutl.sh — This will check the system for ld, ar, cc, and make versions.
adclonectx.pl — This will clone the context file. This will ceate a new context file as per the details of this instance.
runInstallConfigDriver — located in $Oracle_Home/appsutil/driver/instconf.drv
Relinking $Oracle_Home/appsutil/install/adlnkoh.sh — This will relink ORACLE_HOME
For data on database side, following scripts are run
Driver file $Oracle_Home/appsutil/clone/context/data/driver/data.drv
Create database adcrdb.zip
Autoconfig is run
Control file creation adcrdbclone.sql
On Application Side:
COMMON_TOP/clone/bin/perl adcfgclone.pl appsTier pwd=apps
Following scripts are run by adcfgclone.pl
Creates context file for target adclonectx.pl
Run driver files
$ORACLE_HOME/appsutil/driver/instconf.drv
$IAS_ORACLE_HOME/appsutil/driver/instconf.drv
Relinking of Oracle Home$ORACLE_HOME/bin/adlnk806.sh$IAS_ORACLE_HOME/bin/adlnkiAS.sh
At the end it will run the driver file $COMMON_TOP/clone/appl/driver/appl.drv and then runs autoconfig.
Enjoy!!!
12 comments:
Would you know why adcfgclone dbTier sets s_dbCluster=FALSE when "Target instance" is specified as RAC? It does this when run with parameter "database" or "dbTier" but does not do so with "dbTechStack".
HI,
This note on adpreclone is a very good article. Young DBAs can understand adpreclone concepts in a very easy and better way.
Jagadish
Great Stuff..Thanks for all you efforts...
Thanks a lot!
It really helped.
really, Very nice one article.
It is one of the best article that i ever read on internet.
I found one think missing. If you include all the option available with adpreclone, It will be a prefect article.
This is great article...For more information please login into metalink and check below doc.
Troubleshooting RapidClone issues with Oracle Applications 11i [ID 364565.1]
Hi,
This is a good post, this questions was asked to me very recently in an interview. I didn't guess that i'll get an answer to this.
Thanks.
What are the Various component available with the adpreclone and adcfgclone and what are the diffrence between them....?
Thanks
Mohit
Thanks for share information, is excellent =)
When are the new directories with the new context name created?
Why when adpreclone is executed it does not create an instconf.drv file but a instconf.drv.new file. Should I delete the existing one before running this command or should I just rename the new file to instconf.drv? If I don't change it the adcfgclone runs with error.
Wayne
Good stuff, Helpful.....
Post a Comment