B Cloning an Oracle Home

Cloning an Oracle home involves creating a copy of the Oracle home and then configuring it for a new environment. If you are performing multiple Oracle Database installations, then you may want to use this method to create each Oracle home, because copying files from an existing Oracle Database installation takes less time than creating a new version of them. This method is also useful if the Oracle home that you are cloning has had patches applied to it. When you clone this Oracle home, the new Oracle home will have the patch updates as well.

When cloning Database Oracle homes using 11.1 Database Control, you need to update the exclude file list. This file list specifies files that need not be included when the source Oracle home is archived because these files are not required for the clone operation. The following files should not be included in the archive:

Note:

In addition to cloning an Oracle home, you can clone individual Oracle Database installations by using Enterprise Manager Database Control. Oracle Database Administrator's Guide provides detailed information about cloning Oracle Database installations and Oracle homes.

To clone an Oracle home:

  1. Verify that the installation of Oracle Database that you want to clone has been successful.

    You can do this by reviewing the installActionsdate_time.log file for the installation session, which is normally located in the /orainventory_location/logs directory.

    If you have installed patches, then you can check their status by running the following commands:

    $ $ORACLE_HOME/OPatch ORACLE_HOME=ORACLE_HOME_using_patch
    $ $ORACLE_HOME/OPatch opatch lsinventory
    
  2. Stop all processes related to the Oracle home. Refer to "Removing Oracle Software" section for more information on stopping the processes for an Oracle home.

  3. Create a ZIP file with the Oracle home (but not Oracle base) directory.

    For example, if the source Oracle installation is in the /u01/app/oracle/product/11.1.0/db_1, then you zip the db_1 directory by using the following command:

    # zip -r db_1.zip /u01/app/oracle/product/11.1.0/db_1
    

    Leave out the admin, flash_recovery_area, and oradata directories that are in the 11.1.0 directory. These directories will be created in the target installation later, when you create a new database there.

  4. Copy the ZIP file to the root directory of the target computer.

  5. Extract the ZIP file contents by using the following command:

    # unzip -d / db_1.zip
    
  6. Repeat steps 4 and 5 for each computer where you want to clone the Oracle home, unless the Oracle home is on a shared storage device.

  7. On the target computer, change directory to the unzipped Oracle home directory, and remove all the .ora (*.ora) files present in the unzipped $ORACLE_HOME/network/admin directory.

  8. From the $ORACLE_HOME/oui/bin directory, run Oracle Universal Installer in clone mode for the unzipped Oracle home. Use the following syntax:

    $ORACLE_HOME/oui/bin/runInstaller -silent -clone ORACLE_BASE="target_oracle_base" ORACLE_HOME="target_oracle_home" ORACLE_HOME_NAME="unique_name_on node" [-responseFile full_directory_path]
    

    For example:

    $ORACLE_HOME/oui/bin/runInstaller -silent -clone ORACLE_BASE= "/u01/app/oracle/" ORACLE_HOME="/u01/app/oracle/product/11.1.0/db_1" ORACLE_HOME_NAME="db_1"
    

    The -responseFile parameter is optional. You can supply clone-time parameters on the command line or by using the response file named on the command line.

    Oracle Universal Installer starts, and then records the cloning actions in the cloneActionstimestamp.log file. This log file is normally located in /orainventory_location/logs directory.

  9. To configure connection information for the new database, run Net Configuration Assistant.

    $ cd $ORACLE_HOME/bin
    $ ./netca
    
  10. To create a new database for the newly cloned Oracle home, run Database Configuration Assistant as follows:

    $ cd $ORACLE_HOME/bin
    $ ./dbca
    

See Also:

Use the following steps to configure Oracle Configuration Manager for a cloned Oracle home:

  1. Run the emSnapshotEnv script from bin directory as follows:

    $ORACLE_HOME/ccr/bin/emSnapshotEnv
    
  2. Copy the content of the core.jar into pending directory as follows:

    cp ccr/inventory/core.jar $ORACLE_HOME/ccr/inventory/pending
    
  3. Use the following command to remove the previous state files:

    rm ORACLE_HOME/ccr/state/*.ll
    
  4. If you have removed the state files, then you must relink the core functions with the following command:

     $ORACLE_HOME/ccr/bin/deployPackages
    
  5. Use the following command to rerun Oracle Configuration Manager:

     $ORACLE_HOME/ccr/bin/configCCR