Pages

Tuesday, April 7, 2009

Cloning Database using RMAN

I mentioned in one of my RMAN posts earlier, that there was one feature that I really liked about RMAN. Well, today is your lucky day!!! I am going to talk about Database Cloning using RMAN.

I am sure most of you would be very well aware of RMAN''s Duplicate Command. We will see the command in action.

Before you start cloning you should fulfill the following pre-requisites:

  1. Target Database must be in Archivelog mode
  2. Target Database should be registered in the Recovery Catalog Database
  3. A Valid Full Database Backup of Target Database should be in hand
  4. A Test Machine that has Oracle Home Version same as that of Target Database
Example Considerations:


Test Machine O/S: Windows XP SP2
Oracle Version: Oracle 9iR2 (9.2.0.8) Standard Edition
Target Database: ORCL
Recover Catalog Database: RCVCAT
Auxiliary Database: DBPIMPL


On the Test Machine, create an initialization parameter file same as that of Target Database. Here I will refer my new Database to be cloned as Auxiliary Database having SID as "DBPIMPL".
  1. Change the db_name and instance_name parameters to Auxiliary Database Name, i.e. "DBPIMPL".
  2. Change the Target Database OFA path/location to the Auxiliary Database OFA path/location.
  3. Modify the SGA size as per the availability of Resources on Test Machine.
  4. Block Size of Auxiliary Database must be same as that of Target Database.
Please ensure that the following parameters are added to the PFILE:

*.lock_name_space=ORCL


This parameter ensures we don't accidently restore and recover the Target Database


*.db_file_name_convert=('D:\oracle\oradata\ORCL\', 'C:\oracle\oradata\DBPIMPL\')
*.log_file_name_convert=('D:\oracle\oradata\ORCL\', 'C:\oracle\oradata\DBPIMPL\')


Pointing to the new locaion, so that RMAN, using Target Database Backup Files, will restore at new location.

Your Auxilary Database's PFILE (initdbpimpl.ora) should look like this:


*.background_dump_dest='C:\oracle\admin\DBPIMPL\bdump'
*.compatible='9.2.0.8'
*.control_files='C:\oracle\oradata\DBPIMPL\CONTROL01.CTL','C:\oracle\oradata\DBPIMPL\CONTROL02.CTL','C:\oracle\oradata\DBPIMPL\CONTROL03.CTL'
*.core_dump_dest='C:\oracle\admin\DBPIMPL\cdump'
*.db_cache_size=33554432
*.db_block_size=4096
*.db_name='DBPIMPL'
*.instance_name='DBPIMPL'
*.java_pool_size=58720256
*.large_pool_size=10485760
*.open_cursors=300
*.pga_aggregate_target=25165824
*.processes=150
*.shared_pool_size=50331648
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS'
*.user_dump_dest='C:\oracle\admin\DBPIMPL\udump'
*.db_file_name_convert=('D:\oracle\oradata\ORCL\', 'C:\oracle\oradata\DBPIMPL\')
*.log_file_name_convert=('D:\oracle\oradata\ORCL\', 'C:\oracle\oradata\DBPIMPL\'
*.lock_name_space=ORCL


Next, create a service for Auxiliary Database using ORADIM:


oradim -new -sid dbpimpl -intpwd dbpimpl -pfile C:\oracle\product\9.2.0\db_1\database\initdbpimpl.ora -startmode m


In the Test Machine's TNSNAMES.ora, add a TNS Entry for the new database, i.e. Auxiliary Database. Ensure that all the 3 TNS entries are dedicated for RMAN to function smoothly.

In the Test Machine's LISTENER.ora, add the new database SID to the Listener's SID List.

Reload, or Stop and Start the to make the changes effective.

Ensure all the folders are created for the Auxiliary Database (DBPIMPL), as per Optimal Flexible Architecture. In my case, as follow:


.../admin/bdump
.../admin/cdump
.../admin/udump
.../oradata/DBPIMPL
.../oradata/DBPIMPL/archive


Open a new command window, and put the Auxiliary Database in NOMOUNT mode.


C:\>set oracle_sid=dbpimpl
C:\>sqlplus /nolog
SQL*Plus: Release 9.2.0.8.0 - Production on Tue Apr 7 09:43:42 2009
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

SQL> connect / as sysdba
Connected to an idle instance.

SQL> host lsnrctl
LSNRCTL for 32-bit Windows: Version 9.2.0.8.0 - Production on 07-APR-2009 10:07:23
Copyright (c) 1991, 2006, Oracle Corporation. All rights reserved.
Welcome to LSNRCTL, type "help" for information.

LSNRCTL> reload
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=zaffark)(PORT=1521)))
The command completed successfully

LSNRCTL> exit

SQL>
SQL> startup nomount;
ORACLE instance started.
Total System Global Area 177282424 bytes
Fixed Size 454008 bytes
Variable Size 142606336 bytes
Database Buffers 33554432 bytes
Redo Buffers 667648 bytes

SQL>
SQL> show parameter db_name
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_name string DBPIMPL

SQL>
SQL> disconn

SQL> exit


Now, we will require to connect to RMAN on Test Machine and start the cloning process:


C:\>set oracle_sid=dbpimpl

C:\>rman
Recovery Manager: Release 9.2.0.8.0 - Production
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.

RMAN> spool log to c:\dbpimpl_dup_070409.txt

RMAN> connect catalog rman@rcvcat

recovery catalog database Password:

RMAN> connect target sys@orcl

target database Password:

RMAN> connect auxiliary /

RMAN>
RMAN> duplicate target database to DBPIMPL
2> LOGFILE
3> GROUP 1 ('C:\ORACLE\ORADATA\dbpimpl\REDO01A.RDO', 'C:\ORACLE\ORADATA\dbpimpl\REDO01B.RDO') SIZE 10M REUSE,
4> GROUP 2 ('C:\ORACLE\ORADATA\dbpimpl\REDO02A.RDO', 'C:\ORACLE\ORADATA\dbpimpl\REDO02B.RDO') SIZE 10M REUSE,
5> GROUP 3 ('C:\ORACLE\ORADATA\dbpimpl\REDO03A.RDO', 'C:\ORACLE\ORADATA\dbpimpl\REDO03B.RDO') SIZE 10M REUSE,
6> GROUP 4 ('C:\ORACLE\ORADATA\dbpimpl\REDO04A.RDO', 'C:\ORACLE\ORADATA\dbpimpl\REDO04B.RDO') SIZE 10M REUSE;

RMAN>


My Target Database Has Redo Multiplexed on 2 drives, where as my Auxiliary Database doesn't have the luxury of 2 drives. So, I will create Redo Log Group Members same as the Target Database, but point them to Test Machine's C: Drive.

I need to check the RMAN spool file for any errors. If none, my cloning is complete. So simple!!! That's why it is a beautiful feature of RMAN.

Here is what happens in the background when you fire the RMAN Duplicate command.


Spooling started in log file: c:\dbpimpl_dup_070409.txt
Recovery Manager: Release 9.2.0.8.0 - Production

RMAN> connected to recovery catalog database

RMAN> connected to target database: ORCL (DBID=1032853409)

RMAN> connected to auxiliary database: DBPIMPL (not mounted)

RMAN>
RMAN> 2> 3> 4> 5> 6>

Starting Duplicate Db at 07-APR-09
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: sid=10 devtype=DISK

printing stored script:
Memory Script{
set until scn 195634017;
set newname for datafile 1 to "C:\ORACLE\ORADATA\DBPIMPL\SYSTEM01.DBF";
set newname for datafile 2 to "C:\ORACLE\ORADATA\DBPIMPL\UNDOTBS01.DBF";
set newname for datafile 3 to "C:\ORACLE\ORADATA\DBPIMPL\CWMLITE01.DBF";
set newname for datafile 4 to "C:\ORACLE\ORADATA\DBPIMPL\DRSYS01.DBF";
set newname for datafile 5 to "C:\ORACLE\ORADATA\DBPIMPL\INDX01.DBF";
set newname for datafile 6 to "C:\ORACLE\ORADATA\DBPIMPL\TOOLS01.DBF";
.....
set newname for datafile 24 to "C:\ORACLE\ORADATA\DBPIMPL\USERS01.DBF";
restore
check readonly
clone database ;
}

executing script: Memory Script
executing command: SET until clause
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME

Starting restore at 07-APR-09
using channel ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: starting datafile backupset restore
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
restoring datafile 00001 to C:\ORACLE\ORADATA\DBPIMPL\SYSTEM01.DBF
restoring datafile 00002 to C:\ORACLE\ORADATA\DBPIMPL\UNDOTBS01.DBF
restoring datafile 00003 to C:\ORACLE\ORADATA\DBPIMPL\CWMLITE01.DBF
restoring datafile 00004 to C:\ORACLE\ORADATA\DBPIMPL\DRSYS01.DBF
restoring datafile 00005 to C:\ORACLE\ORADATA\DBPIMPL\INDX01.DBF
restoring datafile 00006 to C:\ORACLE\ORADATA\DBPIMPL\TOOLS01.DBF
......
restoring datafile 00024 to C:\ORACLE\ORADATA\DBPIMPL\USERS01.DBF

channel ORA_AUX_DISK_1: restored backup piece 1
piece handle=\\TESTDB\ORCL\ORCL_ARKBQBQB_1_1_20090406 tag=FULL_20090406_1730 params=NULL
channel ORA_AUX_DISK_1: restored backup piece 2
piece handle=\\TESTDB\ORCL\ORCL_ARKBQBQB_2_1_20090406 tag=FULL_20090406_1730 params=NULL
channel ORA_AUX_DISK_1: restored backup piece 3
piece handle=\\TESTDB\ORCL\ORCL_ARKBQBQB_3_1_20090406 tag=FULL_20090406_1730 params=NULL
channel ORA_AUX_DISK_1: restored backup piece 4
piece handle=\\TESTDB\ORCL\ORCL_ARKBQBQB_4_1_20090406 tag=FULL_20090406_1730 params=NULL
channel ORA_AUX_DISK_1: restored backup piece 5
piece handle=\\TESTDB\ORCL\ORCL_ARKBQBQB_5_1_20090406 tag=FULL_20090406_1730 params=NULL
channel ORA_AUX_DISK_1: restored backup piece 6
piece handle=\\TESTDB\ORCL\ORCL_ARKBQBQB_6_1_20090406 tag=FULL_20090406_1730 params=NULL
channel ORA_AUX_DISK_1: restored backup piece 7
piece handle=\\TESTDB\ORCL\ORCL_ARKBQBQB_7_1_20090406 tag=FULL_20090406_1730 params=NULL
channel ORA_AUX_DISK_1: restored backup piece 8
piece handle=\\TESTDB\ORCL\ORCL_ARKBQBQB_8_1_20090406 tag=FULL_20090406_1730 params=NULL
channel ORA_AUX_DISK_1: restored backup piece 9
piece handle=\\TESTDB\ORCL\ORCL_ARKBQBQB_9_1_20090406 tag=FULL_20090406_1730 params=NULL
channel ORA_AUX_DISK_1: restore complete

Finished restore at 07-APR-09

sql statement: CREATE CONTROLFILE REUSE SET DATABASE "DBPIMPL" RESETLOGS ARCHIVELOG
MAXLOGFILES 50
MAXLOGMEMBERS 5
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 226
LOGFILE
GROUP 1 ( 'C:\ORACLE\ORADATA\dbpimpl\REDO01A.RDO', 'C:\ORACLE\ORADATA\dbpimpl\REDO01B.RDO' ) SIZE 10485760 REUSE,
GROUP 2 ( 'C:\ORACLE\ORADATA\dbpimpl\REDO02A.RDO', 'C:\ORACLE\ORADATA\dbpimpl\REDO02B.RDO' ) SIZE 10485760 REUSE,
GROUP 3 ( 'C:\ORACLE\ORADATA\dbpimpl\REDO03A.RDO', 'C:\ORACLE\ORADATA\dbpimpl\REDO03B.RDO' ) SIZE 10485760 REUSE,
GROUP 4 ( 'C:\ORACLE\ORADATA\dbpimpl\REDO04A.RDO', 'C:\ORACLE\ORADATA\dbpimpl\REDO04B.RDO' ) SIZE 10485760 REUSE
DATAFILE
'C:\ORACLE\ORADATA\DBPIMPL\SYSTEM01.DBF'
CHARACTER SET WE8MSWIN1252

printing stored script: Memory Script
{ switch clone datafile all; }

executing script: Memory Script

datafile 2 switched to datafile copy
input datafilecopy recid=1 stamp=683556745 filename=C:\ORACLE\ORADATA\DBPIMPL\UNDOTBS01.DBF
datafile 3 switched to datafile copy
input datafilecopy recid=2 stamp=683556745 filename=C:\ORACLE\ORADATA\DBPIMPL\CWMLITE01.DBF
datafile 4 switched to datafile copy
input datafilecopy recid=3 stamp=683556745 filename=C:\ORACLE\ORADATA\DBPIMPL\DRSYS01.DBF
datafile 5 switched to datafile copy
input datafilecopy recid=4 stamp=683556745 filename=C:\ORACLE\ORADATA\DBPIMPL\INDX01.DBF
datafile 6 switched to datafile copy
input datafilecopy recid=5 stamp=683556745
filename=C:\ORACLE\ORADATA\DBPIMPL\TOOLS01.DBF
......
datafile 24 switched to datafile copy
input datafilecopy recid=23 stamp=683556745 filename=C:\ORACLE\ORADATA\DBPIMPL\USERS01.DBF

printing stored script: Memory Script

{
set until scn 195634017;
recover
clone database
delete archivelog ;
}

executing script: Memory Script

executing command: SET until clause

Starting recover at 07-APR-09
using channel ORA_AUX_DISK_1

starting media recovery

channel ORA_AUX_DISK_1: starting archive log restore to default destination
channel ORA_AUX_DISK_1: restoring archive log
archive log thread=1 sequence=8168
channel ORA_AUX_DISK_1: restored backup piece 1
piece handle=\\TESTDB\ORCL\ORCL_ATKBQDRG_1_1_20090406 tag=ARCH_20090406_1730 params=NULL
channel ORA_AUX_DISK_1: restore complete
archive log filename=C:\ORACLE\PRODUCT\9.2.0\DB_1\RDBMS\ARC08168.001 thread=1 sequence=8168
channel clone_default: deleting archive log(s)
archive log filename=C:\ORACLE\PRODUCT\9.2.0\DB_1\RDBMS\ARC08168.001 recid=1 stamp=683556761
channel ORA_AUX_DISK_1: starting archive log restore to default destination
channel ORA_AUX_DISK_1: restoring archive log
archive log thread=1 sequence=8169
channel ORA_AUX_DISK_1: restoring archive log
archive log thread=1 sequence=8170
channel ORA_AUX_DISK_1: restoring archive log
archive log thread=1 sequence=8171
channel ORA_AUX_DISK_1: restored backup piece 1
piece handle=\\TESTDB\ORCL\ORCL_B1KBS5S5_1_1_20090407 tag=ARCH_20090407_1000 params=NULL
channel ORA_AUX_DISK_1: restore complete
archive log filename=C:\ORACLE\PRODUCT\9.2.0\DB_1\RDBMS\ARC08169.001 thread=1 sequence=8169
channel clone_default: deleting archive log(s)
archive log filename=C:\ORACLE\PRODUCT\9.2.0\DB_1\RDBMS\ARC08169.001 recid=4 stamp=683556869
archive log filename=C:\ORACLE\PRODUCT\9.2.0\DB_1\RDBMS\ARC08170.001 thread=1 sequence=8170
channel clone_default: deleting archive log(s)
archive log filename=C:\ORACLE\PRODUCT\9.2.0\DB_1\RDBMS\ARC08170.001 recid=3 stamp=683556844
archive log filename=C:\ORACLE\PRODUCT\9.2.0\DB_1\RDBMS\ARC08171.001 thread=1 sequence=8171
channel clone_default: deleting archive log(s)
archive log filename=C:\ORACLE\PRODUCT\9.2.0\DB_1\RDBMS\ARC08171.001 recid=2 stamp=683556776
media recovery complete

Finished recover at 07-APR-09

printing stored script: Memory Script

{
shutdown clone;
startup clone nomount ;
}

executing script: Memory Script

database dismounted
Oracle instance shut down

connected to auxiliary database (not started)
Oracle instance started

Total System Global Area 177282424 bytes

Fixed Size 454008 bytes
Variable Size 142606336 bytes
Database Buffers 33554432 bytes
Redo Buffers 667648 bytes

sql statement: CREATE CONTROLFILE REUSE SET DATABASE "DBPIMPL" RESETLOGS ARCHIVELOG
MAXLOGFILES 50
MAXLOGMEMBERS 5
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 226
LOGFILE
GROUP 1 ( 'C:\ORACLE\ORADATA\dbpimpl\REDO01A.RDO', 'C:\ORACLE\ORADATA\dbpimpl\REDO01B.RDO' ) SIZE 10485760 REUSE,
GROUP 2 ( 'C:\ORACLE\ORADATA\dbpimpl\REDO02A.RDO', 'C:\ORACLE\ORADATA\dbpimpl\REDO02B.RDO' ) SIZE 10485760 REUSE,
GROUP 3 ( 'C:\ORACLE\ORADATA\dbpimpl\REDO03A.RDO', 'C:\ORACLE\ORADATA\dbpimpl\REDO03B.RDO' ) SIZE 10485760 REUSE,
GROUP 4 ( 'C:\ORACLE\ORADATA\dbpimpl\REDO04A.RDO', 'C:\ORACLE\ORADATA\dbpimpl\REDO04B.RDO' ) SIZE 10485760 REUSE
DATAFILE 'C:\ORACLE\ORADATA\DBPIMPL\SYSTEM01.DBF'
CHARACTER SET WE8MSWIN1252

printing stored script: Memory Script

{
catalog clone datafilecopy "C:\ORACLE\ORADATA\DBPIMPL\UNDOTBS01.DBF";
catalog clone datafilecopy "C:\ORACLE\ORADATA\DBPIMPL\CWMLITE01.DBF";
catalog clone datafilecopy "C:\ORACLE\ORADATA\DBPIMPL\DRSYS01.DBF";
catalog clone datafilecopy "C:\ORACLE\ORADATA\DBPIMPL\INDX01.DBF";
catalog clone datafilecopy "C:\ORACLE\ORADATA\DBPIMPL\TOOLS01.DBF";
......
catalog clone datafilecopy "C:\ORACLE\ORADATA\DBPIMPL\USERS01.DBF";
switch clone datafile all;
}


executing script: Memory Script

cataloged datafile copy
datafile copy filename=C:\ORACLE\ORADATA\DBPIMPL\UNDOTBS01.DBF recid=1 stamp=683557959
cataloged datafile copy
datafile copy filename=C:\ORACLE\ORADATA\DBPIMPL\CWMLITE01.DBF recid=2 stamp=683557959
cataloged datafile copy
datafile copy filename=C:\ORACLE\ORADATA\DBPIMPL\DRSYS01.DBF recid=3 stamp=683557959
cataloged datafile copy
datafile copy filename=C:\ORACLE\ORADATA\DBPIMPL\INDX01.DBF recid=4 stamp=683557960
cataloged datafile copy
datafile copy filename=C:\ORACLE\ORADATA\DBPIMPL\TOOLS01.DBF recid=5 stamp=683557960
......
cataloged datafile copy
datafile copy filename=C:\ORACLE\ORADATA\DBPIMPL\USERS01.DBF recid=23 stamp=683557961
datafile 2 switched to datafile copy
input datafilecopy recid=1 stamp=683557959 filename=C:\ORACLE\ORADATA\DBPIMPL\UNDOTBS01.DBF
datafile 3 switched to datafile copy
input datafilecopy recid=2 stamp=683557959 filename=C:\ORACLE\ORADATA\DBPIMPL\CWMLITE01.DBF
datafile 4 switched to datafile copy
input datafilecopy recid=3 stamp=683557959 filename=C:\ORACLE\ORADATA\DBPIMPL\DRSYS01.DBF
datafile 5 switched to datafile copy
input datafilecopy recid=4 stamp=683557960 filename=C:\ORACLE\ORADATA\DBPIMPL\INDX01.DBF
datafile 6 switched to datafile copy
filename=C:\ORACLE\ORADATA\DBPIMPL\TOOLS01.DBF
input datafilecopy recid=5 stamp=683557960
......
datafile 24 switched to datafile copy
input datafilecopy recid=23 stamp=683557964 filename=C:\ORACLE\ORADATA\DBPIMPL\USERS01.DBF

printing stored script: Memory Script

{
Alter clone database open resetlogs;
}

executing script: Memory Script
database opened

Finished Duplicate Db at 07-APR-09

RMAN>


So, the logs says my cloniong is successfully completed. Now there are few post-cloning activities that need to be taken care of.

Firstly, you need to add tempfiles to all the temporary tablespaces that you might be having in the Auxiliary Database. Then create your spfile from pfile, and restart the database.


SQL> ALTER TABLESPACE TEMP ADD TEMPFILE 'C:\oracle\oradata\DBPIMPL\TEMP01.DBF' SIZE 100M
2 /
Tablespace altered.

SQL> ALTER TABLESPACE TEMP_STATS ADD TEMPFILE 'C:\oracle\oradata\DBPIMPL\TEMP_STATS01.DBF' SIZE 50M
2 /
Tablespace altered.

SQL> ALTER TABLESPACE TEMP_PAY ADD TEMPFILE 'C:\oracle\oradata\DBPIMPL\TEMP_PAY01.DBF' SIZE 50M
2 /
Tablespace altered.

SQL> SELECT COUNT(*) FROM DBA_OBJECTS WHERE STATUS <> 'VALID';
COUNT(*)
----------
0

SQL> create spfile from pfile;
File created.

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

SQL> startup
ORACLE instance started.
Total System Global Area 177282424 bytes
Fixed Size 454008 bytes
Variable Size 142606336 bytes
Database Buffers 33554432 bytes
Redo Buffers 667648 bytes
Database mounted.
Database opened.

SQL> exit


Now you can connect to RMAN using target control file and take a full database backup.


C:\>rman

Recovery Manager: Release 9.2.0.8.0 - Production

Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.

RMAN> CONNECT TARGET /

connected to target database: DBPIMPL (DBID=1527816262)

RMAN> SHOW ALL;

using target database controlfile instead of recovery catalog
RMAN configuration parameters are:

CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # defaultCONFIGURE SNAPSHOT CONTROLFILE NAME TO 'C:\ORACLE\PRODUCT\9.2.0\DB_1\DATABASE\SNCFDBPIMPL.ORA'; # default

RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;

new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
new RMAN configuration parameters are successfully stored

RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT 'C:\oracle\BACKUP\RMAN\DBPIMPL\%d_%U_%T' MAXPIECESIZE 2 G;

new RMAN configuration parameters:
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT 'C:\oracle\BACKUP\RMAN\DBPIMPL\%d_%U_%T' MAXPIECESIZE 2 G;
new RMAN configuration parameters are successfully stored

RMAN>
RMAN> show all;

RMAN configuration parameters are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT 'C:\oracle\BACKUP\RMAN\DBPIMPL\%d_%U_%T' MAXPIECESIZE 2 G;
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'C:\ORACLE\PRODUCT\9.2.0\DB_1\DATABASE\SNCFDBPIMPL.ORA'; # default

RMAN> BACKUP DATABASE PLUS ARCHIVELOG;

Starting backup at 07-APR-09
current log archived
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=10 devtype=DISK
channel ORA_DISK_1: starting archive log backupset
channel ORA_DISK_1: specifying archive log(s) in backup setinput archive log thread=1 sequence=1 recid=1 stamp=683558677
channel ORA_DISK_1: starting piece 1 at 07-APR-09
channel ORA_DISK_1: finished piece 1 at 07-APR-09
piece handle=C:\ORACLE\BACKUP\RMAN\DBPIMPL\DBPIMPL_01KBSHOL_1_1_20090407 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:03
Finished backup at 07-APR-09

Starting backup at 07-APR-09
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
input datafile fno=00001 name=C:\ORACLE\ORADATA\DBPIMPL\SYSTEM01.DBF
input datafile fno=00002 name=C:\ORACLE\ORADATA\DBPIMPL\UNDOTBS01.DBF
input datafile fno=00006 name=C:\ORACLE\ORADATA\DBPIMPL\TOOLS01.DBF
input datafile fno=00005 name=C:\ORACLE\ORADATA\DBPIMPL\INDX01.DBF
input datafile fno=00003 name=C:\ORACLE\ORADATA\DBPIMPL\CWMLITE01.DBF
input datafile fno=00004 name=C:\ORACLE\ORADATA\DBPIMPL\DRSYS01.DBF
......
input datafile fno=00024 name=C:\ORACLE\ORADATA\DBPIMPL\USERS01.DBF
channel ORA_DISK_1: starting piece 1 at 07-APR-09
channel ORA_DISK_1: finished piece 1 at 07-APR-09
piece handle=C:\ORACLE\BACKUP\RMAN\DBPIMPL\DBPIMPL_02KBSHOP_1_1_20090407 comment=NONE
channel ORA_DISK_1: starting piece 2 at 07-APR-09
channel ORA_DISK_1: finished piece 2 at 07-APR-09
piece handle=C:\ORACLE\BACKUP\RMAN\DBPIMPL\DBPIMPL_02KBSHOP_2_1_20090407 comment=NONE
channel ORA_DISK_1: starting piece 3 at 07-APR-09
channel ORA_DISK_1: finished piece 3 at 07-APR-09
piece handle=C:\ORACLE\BACKUP\RMAN\DBPIMPL\DBPIMPL_02KBSHOP_3_1_20090407 comment=NONE
channel ORA_DISK_1: starting piece 4 at 07-APR-09
channel ORA_DISK_1: finished piece 4 at 07-APR-09
piece handle=C:\ORACLE\BACKUP\RMAN\DBPIMPL\DBPIMPL_02KBSHOP_4_1_20090407 comment=NONE
channel ORA_DISK_1: starting piece 5 at 07-APR-09
channel ORA_DISK_1: finished piece 5 at 07-APR-09
piece handle=C:\ORACLE\BACKUP\RMAN\DBPIMPL\DBPIMPL_02KBSHOP_5_1_20090407 comment=NONE
channel ORA_DISK_1: starting piece 6 at 07-APR-09
channel ORA_DISK_1: finished piece 6 at 07-APR-09
piece handle=C:\ORACLE\BACKUP\RMAN\DBPIMPL\DBPIMPL_02KBSHOP_6_1_20090407 comment=NONE
channel ORA_DISK_1: starting piece 7 at 07-APR-09
channel ORA_DISK_1: finished piece 7 at 07-APR-09
piece handle=C:\ORACLE\BACKUP\RMAN\DBPIMPL\DBPIMPL_02KBSHOP_7_1_20090407 comment=NONE
channel ORA_DISK_1: starting piece 8 at 07-APR-09
channel ORA_DISK_1: finished piece 8 at 07-APR-09
piece handle=C:\ORACLE\BACKUP\RMAN\DBPIMPL\DBPIMPL_02KBSHOP_8_1_20090407 comment=NONE
channel ORA_DISK_1: starting piece 9 at 07-APR-09
channel ORA_DISK_1: finished piece 9 at 07-APR-09
piece handle=C:\ORACLE\BACKUP\RMAN\DBPIMPL\DBPIMPL_02KBSHOP_9_1_20090407 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:25:43
Finished backup at 07-APR-09

Starting backup at 07-APR-09
current log archived
using channel ORA_DISK_1
channel ORA_DISK_1: starting archive log backupset
channel ORA_DISK_1: specifying archive log(s) in backup setinput archive log thread=1 sequence=2 recid=2 stamp=683560224
channel ORA_DISK_1: starting piece 1 at 07-APR-09
channel ORA_DISK_1: finished piece 1 at 07-APR-09
piece handle=C:\ORACLE\BACKUP\RMAN\DBPIMPL\DBPIMPL_03KBSJ90_1_1_20090407 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:03
Finished backup at 07-APR-09

Starting Control File Autobackup at 07-APR-09
piece handle=C:\ORACLE\PRODUCT\9.2.0\DB_1\DATABASE\C-1527816262-20090407-00 comment=NONE
Finished Control File Autobackup at 07-APR-09

RMAN>exit;

c:\>


This completes the cloning of Auxiliary Database, similar to that of the Target Database.

No comments:

Post a Comment