RMAN Cloning – only 4 steps


Database name: cts
Clone database name: clone

  1. connect to cts database and take RMAN full backup(database must be open).

. oraenv
rman>connect target /

rman>backup database plus archivelog;


  1. Create directory structure for clone database.

2.1 cd /u01/app/oracle/admin

mkdir clone
cd clone

mkdir adump bdump cdump udump pfile

2.2.cd /u01/app/oracle/oradata

mkdir clone

2.3. pfile creation steps

cd /u01/app/oracle/admin

ls -lrt

cd cts/pfile

ls -lrt

Note: if init.ora file name is different just rename the file(MV oldname init.ora)

cp init.ora /u01/app/oracle/admin/clone/pfile

cd /u01/app/oracle/admin/clone/pfile

ls -lrt

vi init.ora

press “i” to edit

change database name,audit/background/core/user dump locations, controlfile locations and dispatchers name

add below parameters:


esc+shift+:+wq –> to save
or esc+shft+:%s/cts/clone

2.4. password file creation steps

cd /u01/app/oracle/product/10.2.0/db_1/dbs


orapwd file=’/u01/app/oracle/product/10.2.0/db_1/dbs/orapwclone’ password=sys entries=5

ls -lrt

Note: Make sure that CTS database also have password file.

2.5. edit the oratab entry

vi /etc/oratab

Press “i” to edit


esc+shift+:+wq –> to save

2.6. . oraenv –> Set the oracle environment

? clone


export ORACLE_SID=clone
export ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1

echo $ORACLE_SID –> just to check the database name
echo $ORACLE_HOME –> just to check the oracle home path

sqlplus “/as sysdba”

2.7.SQL> startup nomount pfile=’/u01/app/oracle/admin/clone/pfile/init.ora’;

SQL>create spfile from pfile=’/u01/app/oracle/admin/clone/pfile/init.ora’;

SQL>shut immediate

SQL>startup nomount

  1. start listener and database entires

to check listnere status

ps -ef|grep tns

lsnrctl status LISTENER

if it is down start the listener

lsnrctl start

to check TNS entries

tnsping cts
tnsping clone

if not pingable

cd /u01/app/oracle/product/10.2.0/db_1/network/admin/

ls -lrt
vi tnsnames.ora

put the entry for database cts and clone

  1. create clone database.

. oraenv

rman>connet target sys/[email protected]
rman>connect auxiliary /
rman>duplicate target database to clone;

*** end ***