Back to Basics of Cloning!!!!

Hello all, As per the request and with experience I am again returing to Cloning of Oracle Application. I know most of them know what exactly happens in cloning but still here I am trying to touch the depths.

Before starting I want to ask question. Why you need to do cloning ? Why we need to duplicate Oracle Application.

We need cloning for various of reasons. suppose I have got production instance and want to test some application. Now here I want to test the application, need to apply some product specific patches which might affect whole application then I have to give downtime which will affect business. So if I had the same this on whic hI can play and test my application or code or say I can apply some patches and at the same time business also run then nothing like it. This can be achieved by cloning or duplicating the application.

Duplicating the application is not easy or its just not simply copy the application, it wont work in any case. Logically it sounds fine just to copy the filesystem and relink it and start the application but its not that easy.

Basically for cloning Oracle Application it can be categorised into three major categories.

-Preparing the Source System
-Copy the file System
-Preparing or say Configuring the Target System

You can achive first and third steps using a Rapid Clone utility which Oracle provides for cloning

There can be many ways and methods to clone Oracle Application which many organisations follows but the only supported method provided by Oracle is using Rapid clone.

Rapid Clone is the new cloning utility introduced in Release 11.5.8. Rapid Clone leverages the new installation and configuration technology utilized by Rapid Install.

Basically there are two cloning methodology using Autoconfig and without using autoconfig. First one that is using autoconfig is completely replaced by Rapidclone.

Non-autocofig cloning methodology was generally used before 11.5.5 that is non autoconfig enabled system.

Here I will discuss Rapid Clone method of cloning and also throw some light on cloning 11.0.3 oracle application as some users are still using that.

So first about the Rapid clone method.

In Category 1 that is first you need to make source for clone. You need to dress up Source system so that only configuration files and not the whole file system is copied.

Pre-requiste Steps

To start with cloning you need to first check about some pre-requisites some utilities should be of required version

Here are they,

Oracle Universal Installer should be of 2.2.0.19 version
Perl should be of 5.005 version minimum
JRE 1.1.8 and 1.3.1
JDK 1.3.1
Zip utility of version 2.3 minimum
Latest Autoconfig Templates patches are applied. TXK-O is the latest till date.
Latest Rapid Clone patches should be applied. Latest is ADX.F till date.

After check ing the pre-requisites now your system is ready to clone.

Preparing the Source system:

After checking the above mentioned pre-requisites now you have to prepare the source system which need to be cloned.

In a broad way what this step will do is this will create the staged clone directory which will be having the driver files and configuration file of the source.

So what exactly is going to happen in this step. Lets get in more details

Basically you have to run the adpreclone.pl script once for Application tier and one for the datbase (even if you are on single node ! )

Lets first check for the Database tier

On Source system, run following as ORACLE user

cd RDBMS Oracle_Home/appsutil/scripts/_perl ./adpreclone.pl dbTier

After running this it goes in two stages

dbTechstack and Database

What exactly it will do is
It will create stage cloned area at $ORACLE_HOME/appsutil/clone This clone directory has got following main directories
data,jre,bin,db,html,context

It will prepare datbase techstack at dbTechStack stage. Major activities it will take care of at this stage.

-Creates template files at $ORACLE_HOME/appsutil/template
-Creates driver files at $ORACLE_HOME/appsutil/driver/instconf.drv
-Converts inventory from binary to xml

It will prepare datbase at the database stage. Major activities includes

-Create datbase control file script
$Oracle_Home/appsutil/clone/context/data/stage/addbhomsrc.xml
$Oracle_Home/appsutil/clone/context/data/stage/adcrdb.zip
adcrdbclone.sql

-Generates database creation driver file
$Oracle_Home/appsutil/clone/context/data/driver/data.drv

-Copy JDBC Libraries
$Oracle_Home/appsutil/clone /clone/jlib/classes111.zip

So all this happens on database side

Now lets concentrate on Application tier side. Again it goes almost in the same way that is in two stages.

As a APPLMGR user on application tier this script is run
cd $COMMON_TOP/admin/scripts/_perl ./adpreclone.pl appsTier

It will also create the staged clone directory at $COMMON_TOP/clone
It goes in two stages. Lets see one by one

atTechStack that is Application tier techstack.

– Creates template files for
Oracle_iAS_Home/appsutil/template
Oracle_806_Home/appsutil/template

-Creates Techstack driver files for
Oracle_iAS_Home/appsutil/driver/instconf.drv
Oracle_806_Home/appsutil/driver/instconf.drv

appltop preparation

-It will create application top driver file
$COMMON_TOP/clone/appl/driver/appl.drv

-Copy JDBC libraries
$COMMON_TOP/clone/jlib/classes111.zip

So this all happens in dressing the source system

After then we need to copy the files.

Copy following files

APPL_TOP
OA_HTML ($COMMON_TOP/html)
JAVA_TOP
COMMON_TOP/util
COMMON_TOP/clone
8.0.6 ORACLE_HOME
iAS ORACLE_HOME
DB ORACLE_HOME
dbf files

After this stage now you need to configure the Target node. Basically you will run adcfgclone.pl same for databse tier and for application tier.
Let go in bit more detail:

First we will see for the database tier

On the target node you will run
ORACLE_DB_HOME/appsutil/clone/bin/perl adcfgclone.pl dbTier

Again there are two stages :

First will look at dbTechstack
It will use the driver files and templates which were created at source and has been copied to target.

Following scripts are run
-adchkutl.sh
-adclonectx.pl
-runInstallConfigDriver —- located in $Oracle_Home/appsutil/driver/instconf.drv
-Relinking $Oracle_Home/appsutil/install/adlnkoh.sh

Now for database
-Driver file
$Oracle_Home/appsutil/clone/context/data/driver/data.drv
-Create database adcrdb.zip
-Autoconfig is run
-Control file creation adcrdbclone.sql

Now on application tier
from COMMON_TOP/clone/bin/perl adcfgclone.pl appsTier

Stage at TechStack
-Creates context file for target adclonectx.pl
-Run driver files
$Oracle_806_Home/appsutil/driver/instconf.drv
$Oracle_iAS_Home/appsutil/driver/instconf.drv

Relinking of Oracle Home
$Oracle_806_Home/bin/adlnk806.sh
$Oracle_iAS_Home/bin/adlnkiAS.sh

at the end for ApplTop stage
It runs driver and then autoconfig

So this will totally configure your application which has been copied.

At the end you have to some finishing tasks

-Update Printer settings
-Update Workflow Configuration settings
-Update Profile options

This completes you application cloning completely.

So Happy reading folks !!!!

About the Author Atul Kumar

Leave a Comment:

36 comments
virendra says April 21, 2008

Hi,
i am trying to clone to a test server, i am getting errro rs, while using the above method, can you please tell me when i run perl adpreclone dbTier it is asking for
$JAVA_TOP what would be the path,

and also how would i update the settings from OAM or in the database

-Update Printer settings
-Update Workflow Configuration settings
-Update Profile options

thanks,
virendra

Reply
Amit says April 22, 2008

Hi Virendra

In 11i

$JAVA_TOP = $COMMON_TOP/java

-Also Login to OAM and from the Application Dashboard you will fine Profile Option (search there), select that and you will be able to find PRINTER related Profile options.
-Go to OAM->Site Map-Workflow
From here all Workflow related setting can be configured.

Let me know if it helps.

Amit

Reply
Virendra says April 22, 2008

Hi Amit,
thanks for the reply, why does it ask for
JAVA_TOP while i run,

perl adcfgclone.pl dbTier

so what path should i give for e.g
/u01/appl1/vpdb/jre or

JAVA_TOP=$COMMON_TOP/JAVA_TOP

Thanks,
Virendra

Reply
Amit says April 22, 2008

Hi Virendra

Give

/u01/appl1/vpdb/jre/1.4.2

Regards
Amit

Reply
Vanitha Sivakumar says April 27, 2008

Hi Atul,

In the following cloning steps mentioned,

-Preparing the Source System
-Copy the file System
-Preparing or say Configuring the Source system{ Shouldn’t this be Target System. Is it a typo or a conscious statment}.

Thanks,
Vanitha Sivakumar.

Reply
Atul says April 27, 2008

Vanitha, Nice catch (Its Typo). I’ll ask author (Amit) to correct it accordingly.

Reply
Amit says April 27, 2008

Thanks Vanitha for Pointing it out.

It gives me a very Positive message 🙂

Amit

Reply
Aashish says June 19, 2008

Well Written Article Nice Job 🙂

Reply
sp says December 3, 2008

Hi Amit,

I am planning to clone apps and db. Do I need to install oracle on target system. Also you have mentioned copy following files, it it on to target machine ?

Reply
fromhyd says December 3, 2008

Hi sp

Yes you have to copy the filesystem on the target machine and you dont have to install Oracle on target.

When you run the adcfgclone script after coping it will configure it according to the target.

Let me know if you have any furthur doubts

Amit

Reply
asebrosky says January 13, 2009

Very helpful and clear article.

Reply
solaris says January 28, 2009

Hi,

I had a quick question.

If we have to clone from solaris 8 to new solaris 10 box do we have to relink everything after the clone or will the cloning take care of relinking?

Reply
Atul says January 28, 2009

solaris, clone process relink executable so no need to relink manually after cloning

Reply
solaris says January 28, 2009

Thank you so much. You are a great resource.
One more quick question. Have you by chance done anything like this and if so what issues did you face. We want to move 11.5.9 with 9.2.0.6 from a solaris 8 box to a solaris 10 box.

Reply
hi says March 24, 2009

hi atul
i clone rel 12.0.6 data base tier done 100% and startup applicationg tier also done but when we start up application it give error
ADAPCCTL.SH: EXITING WITH STATUS 204
than you

Reply
hi says March 24, 2009

hi atul
i clone rel 12.0.6 data base tier done 100% and startup applicationg tier also done but when we start up application it give error
ADAPCCTL.SH: EXITING WITH STATUS 204

on enterprise linux 5 update 2 for x86 32 bit
than you

Reply
hi says March 24, 2009

hi atul
i clone rel 12.0.6 data base tier done 100% and startup applicationg tier also done but when we start up application it give error
ADAPCCTL.SH: EXITING WITH STATUS 204

on enterprise linux 5 update 2 for x86 (32-Bit)
than you

Reply
arif says May 6, 2009

hai atul
i installed 11.5.10.2 in vmware.Actually while installing Linux i gave 200gb mount point.but in my windows physically it takes 80gb.I just copy this 80gb folder to onother system it just working cool.Is it possible to clone(copy of application database )like this setep

Reply
jskishor says May 25, 2009

Very good stuff.

Thx
Kishore

Reply
Atul says May 25, 2009

@Arif,
Yes it is possible to copy database like this if this is on vmware

Reply
Narasimha says July 6, 2009

Hi Amit,

Thanks for the information.
We are using R12 version 12.0.3.
adcrdb.zip is not getting created can you help me out in resolving this.

Thanks,
Narasimha.

Reply
Atul Kumar says July 6, 2009

@Narasimha,
How you are cloning ? (using OAM or command line)

What do you mean by adcrdb.zip is not getting created ?
What error message you are getting ?

Reply
Sanju says July 9, 2009

hi atul,

you are not answering for the question
ADAPCCTL.SH: EXITING WITH STATUS 204

Reply
Seetharam says July 14, 2009

check the logfile:
/oracle/apps/V12/inst/apps/V12_asnowp4/logs/appl/admin/log/adapcctl.txt for more information…

Reply
Seetharam says July 14, 2009

@Sanju,

check the logfile:
/oracle/apps/V12/inst/apps/V12_asnowp4/logs/appl/admin/log/adapcctl.txt for more information…

Reply
ajs says June 2, 2010

You have the best site for solving problems related to oracle database and the ebs application! Clear, accurate and concise! And you are polite and kind. Simply the best! Thank you!

Reply
AHM says June 28, 2010

Hi,

I’m facing the below error while running preclone on dbTier.Instance and all other services are up and running.

oratest|/data/oracle/oratest>perl adpreclone.pl dbTier
Running Rapid Clone with command…
perl /data/oracle/oratest/testdb/9.2.0/appsutil/bin/adclone.pl java=/data/oracle/oratest/testdb/9.2.0/jdk mode=stage stage=/data/oracle/oratest/testdb/9.2.0/appsutil/clone component=dbTier method=CUSTOM dbctx=/data/oracle/oratest/testdb/9.2.0/appsutil/TEST.xml showProgress

Beginning database tier Stage – Mon Jun 28 12:37:54 2010
APPS Password : ******
Log file located at /data/oracle/oratest/testdb/9.2.0/appsutil/log/TEST/StageDBTier_06281237.log
AutoClone needs to start the database up to generate cloning information
Bring up database now [Yes] ?
Please enter either Yes or No.

Please help me

Thnx in Advance

Reply
vinod says December 19, 2010

Hi Atul , Thanks for the information which you have provided. ‘m doing Apps DBA 11i. In an interview , I had a question how to check whether the test system which is to be cloned is having which operating system? Is there any command to check this or Is this one a tricky question ? Can you please reply me. I had mailed some doubts of mine to your mailID. Can u plz give the reply for that…. Thanks in advance…

Reply
Atul Kumar says December 20, 2010

@ Vinod,
Q: How to find operating system ?

For windows : right click on my computer and click on properties.

For Unix : uname -a

Reply
vinod says December 21, 2010

Thanks for the reply ,

Reply
Satish says December 21, 2010

Hi Atul,

This is regards to Vinod query mentioned above. Even i’ve faced the same query how do you check the Operating System is avail at the client side B4 u clone a system? As my answer Uname -a didn’t satisfies to the recruiter. Would be more appreciated for ur early replies.
Thanks & Regards
Satish

Reply
Satish says December 21, 2010

Hi Atul,

This is regards to Vinod query mentioned above. Even i’ve faced the same query how do you check the Operating System is avail at the client side B4 u clone a system? As my answer Uname -a didn’t satisfies to the recruiter. Would be more appreciated for ur early replies.
Thanks & Regards
Satish

Reply
Saroj Mahanta says May 3, 2011

Dear Amit/Atul and others,
This page is simply awesome. I am very happy to see this page. Thank you very much. One incident i must write here, while in my stay in client location, one experienced Apps DBA client, refered your page and did his cloning activity. Hats-off to you guys. Keep doing the gr8 job. You are the Jewels of India.

Well, a little suggestion. Would you please write a similar, blog/article on Basics of Cloning Ebiz Suite R12 as well. I have done some 100’s cloning on R12. I know that there is not much difference between Apps 11 and 12. But these basics are always required for brush-up and quick reference.

Even you may create a automated shell script for preparing source system, copying the file system to destination , and then another script to run in the destination side to prepare the target system. I know its much easier to say than to do. I myself is totally absorbed in my daily DBA task. So anyone who can spare sometime, can take this idea and build a nice automated shell script.

Thank you very much for giving such a nice platform to all.

Keep in touch…
Saroj Mahanta
00972 546018145
saroj.mahanta@gmail.com

Reply
Atul Kumar says May 3, 2011

@ Saroj Mahanta,
Thanks a lot for suggestion, I’ll try to cover R12 cloning high level steps including RAC to single node cloning but currently busy on implementing SSO with fusion middleware products. Hope to do this during my next r12 clone

Reply
Vivek Sharma says January 31, 2014

Hi Atul, Do you have the Oracle Apps 11.0.3 clone steps stashed somewhere in your attic?

I am struggling to find a good document, on that!

You mention 11.0.3 in this thread, but I can’t find anything 11.0.3 specific?

Thanks in advance!

Reply
Jackson says August 23, 2017

Hi, is possible cloning an instance without datatop portion? i means just the structure without transaction data?

Reply
Add Your Reply

Not found