Wednesday, August 18, 2010

After Cloning Some files and symbolic links still contain references to the source system

After Cloning Some files and symbolic links still contain references to the source system

$ORACLE_HOME/bin/qxmlctl
$ORACLE_HOME/bin/clscfg
$ORACLE_HOME/bin/clsfmt
$ORACLE_HOME/bin/dbca
$ORACLE_HOME/bin/dbua
$ORACLE_HOME/bin/dropjava
$ORACLE_HOME/bin/emagentdeploy.pl
$ORACLE_HOME/bin/emtgtctl
$ORACLE_HOME/bin/emutil
$ORACLE_HOME/bin/emca
$ORACLE_HOME/bin/emutil
$ORACLE_HOME/bin/netca
$ORACLE_HOME/lib32/ldflags
$ORACLE_HOME/lib/hsdb_inf.so -> /lib32/hsdb_inf.so
$ORACLE_HOME/lib/hsdb_odbc.so -> /lib32/hsdb_odbc.so
$ORACLE_HOME/lib/hsdb_oing.so -> /lib32/hsdb_oing.so
$ORACLE_HOME/lib/hsdb_ora.so -> /lib32/hsdb_ora.so
$ORACLE_HOME/lib/hsdb_syb.so -> /lib32/hsdb_syb.so
Cause
This can be caused by a failure with the OUI native clone process. If an ORACLE_HOME is already registered in the Global inventory, whether the purpose is to refresh an existing Target instance, or the original instance was removed from the file system (but not from the inventory), then OUI native cloning will assume the instance is already registered and no further configuration is required. This will result in an incomplete target system with files and links still referencing the source instance.  This can also occur for any failure of runInstaller during cloning.

Any problems with ouicli.pl will be detailed in the log files :
/appsutil/log/$CONTEXT_NAME/ohclone.log
$INST_TOP/admin/log/ohclone.log
/logs/cloneActions.log
/logs/oraInstall.log
/logs/silentInstall.log

The following extract from ohclone.log shows a typical example of this problem:-

SEVERE: OUI-10197:Unable to create a new Oracle Home at . Oracle Home already exists at this location. Select another location. INFO: User Selected: Yes/OK      java.io.IOException: OUI-10197:Unable to create a new Oracle Home at . Oracle Home already exists at this location. Select another location.
Possible solutions to this are to rerun the native OUI cloning :

Solution 1 :
Use this if the Global Inventory is shared amongst multiple instances :

- Run OUI and "De-install" the unwanted ORACLE_HOME
- Recopy the files from Source system
- Reconfigure the Target system using the "perl adcfgclone.pl" scripts.

Solution 2 :
Use this if the Global Inventory is local to this ORACLE_HOME, i.e oraInst.loc "inventory_loc" points to :
inventory_loc=/admin/oui/$CONTEXT_NAME/oraInventory
         or (for the Applications Tier)
inventory_loc=/admin/oraInventory
Rename the global inventory :
cd RDBMS $ORACLE_HOME>/admin/oui/$CONTEXT_NAME
mv oraInventory oraInventory.bkp
       or (for the Applications Tier)
cd /admin
mv oraInventory oraInventory.bkp
Create an empty directory and set permissions :
mkdir oraInventory
chmod 777 oraInventory
Rerun the ouicli.pl scripts to register the ORACLE_HOME (repeat for all RDBMS, Tools and Web each if required) :
cd ORACLE_HOME/appsutil/clone/
./ouicli.pl

Check the log files as listed above

No comments:

Post a Comment

Command to do active duplicate for Oracle Database

1. First login to target server 2. Validate tns connectivity between Source DB and Target DB 3. Prepare and validate space availability 4. S...