Duplicate Database From ASM To Non
Duplicate Database From ASM To Non
SQL> select DF.TOTAL/1048576 "DataFile Size Mb", LOG.TOTAL/1048576 "Redo Log Size Mb", CONTROL.TOTAL/1048576 "Control File Size Mb", (DF.TOTAL + LOG.TOTAL + CONTROL.TOTAL)/1048576 "Total Size Mb" from dual, (select sum(a.bytes) TOTAL from dba_data_files a where tablespace_name in ('SYSTEM','SYSAUX','UNDO','USERS')) DF, (select sum(b.bytes) TOTAL from v$log b) LOG, (select sum((cffsz+1)*cfbsz) TOTAL from x$kcccf c) CONTROL ; DataFile Size Mb Redo Log Size Mb ---------------- ---------------Control File Size Mb Total Size Mb -------------------- ------------1165 18.59375 150 1333.59375
input archived log thread=1 sequence=8 RECID=6 STAMP=737897929 input archived log thread=1 sequence=9 RECID=7 STAMP=737962069 input archived log thread=1 sequence=10 RECID=8 STAMP=737969217 input archived log thread=1 sequence=11 RECID=9 STAMP=737969220 input archived log thread=1 sequence=12 RECID=10 STAMP=737969948 input archived log thread=1 sequence=13 RECID=11 STAMP=737969948 channel d1: starting piece 1 at 17-DEC-10 channel d1: finished piece 1 at 17-DEC-10 piece handle=/backups/al_t737969948_s8_p1 tag=TAG20101217T073908 comment=NONE channel d1: backup set complete, elapsed time: 00:00:15 Finished backup at 17-DEC-10 released channel: d1 RMAN>
Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> startup nomount pfile='/backups/initAUX.ora'; ORACLE instance started. Total System Global Area Fixed Size Variable Size Database Buffers Redo Buffers SQL> 146472960 bytes 1335080 bytes 92274904 bytes 50331648 bytes 2531328 bytes
[oracle@localhost ~]$ export ORACLE_SID=AUX [oracle@localhost ~]$ rman target sys/Admin123@azardb auxiliary / Recovery Manager: Release 11.2.0.1.0 - Production on Fri Dec 17 09:18:34 2010 Copyright (c) 1982, 2009, Oracle and/or its affiliates. connected to target database: AZARDB (DBID=1655311948) connected to auxiliary database: AUX (not mounted) RMAN> run{ 2> allocate auxiliary channel C1 device type disk; 3> duplicate target database to AUX; 4> } using target database control file instead of recovery catalog allocated channel: C1 channel C1: SID=20 device type=DISK Starting Duplicate Db at 17-DEC-10 contents of Memory Script: { sql clone "create spfile from memory"; } executing Memory Script sql statement: create spfile from memory All rights reserved.
contents of Memory Script: { shutdown clone immediate; startup clone nomount; } executing Memory Script Oracle instance shut down connected to auxiliary database (not started) Oracle instance started Total System Global Area Fixed Size Variable Size Database Buffers Redo Buffers allocated channel: C1 146472960 bytes 1335080 bytes 92274904 bytes 50331648 bytes 2531328 bytes
channel C1: SID=18 device type=DISK contents of Memory Script: { sql clone "alter system set ''AZARDB'' comment= db_name =
''Modified by RMAN duplicate'' scope=spfile"; sql clone "alter system set db_unique_name = ''AUX'' comment= ''Modified by RMAN duplicate'' scope=spfile"; shutdown clone immediate; startup clone force nomount restore clone primary controlfile; alter clone database mount; } executing Memory Script sql statement: alter system set scope=spfile sql statement: alter system set duplicate'' scope=spfile Oracle instance shut down Oracle instance started Total System Global Area 146472960 bytes db_unique_name = ''AUX'' comment= ''Modified by RMAN db_name = ''AZARDB'' comment= ''Modified by RMAN duplicate''
Fixed Size Variable Size Database Buffers Redo Buffers allocated channel: C1
channel C1: SID=18 device type=DISK Starting restore at 17-DEC-10 channel C1: starting datafile backup set restore channel C1: restoring control file channel C1: reading from backup piece /backups/df_t737969943_s7_p1 channel C1: piece handle=/backups/df_t737969943_s7_p1 tag=TAG20101217T073635 channel C1: restored backup piece 1 channel C1: restore complete, elapsed time: 00:00:03 output file name=/u01/app/oracle/AUX/control01.ctl Finished restore at 17-DEC-10 database mounted contents of Memory Script: { set until scn 971599;
set newname for datafile 1 to "/u01/app/oracle/AUX/azardb/datafile/system.256.736179685"; set newname for datafile 2 to "/u01/app/oracle/AUX/azardb/datafile/sysaux.257.736179685"; set newname for datafile 3 to "/u01/app/oracle/AUX/azardb/datafile/undotbs1.258.736179685"; set newname for datafile 4 to "/u01/app/oracle/AUX/azardb/datafile/users.256.737964169"; set newname for datafile 5 to "/u01/app/oracle/AUX/azardb/datafile/example.269.736179971"; restore clone database ; } executing 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 Starting restore at 17-DEC-10 channel C1: starting datafile backup set restore channel C1: specifying datafile(s) to restore from backup set channel C1: restoring datafile 00001 to /u01/app/oracle/AUX/azardb/datafile/system.256.736179685 channel C1: restoring datafile 00002 to /u01/app/oracle/AUX/azardb/datafile/sysaux.257.736179685 channel C1: restoring datafile 00003 to /u01/app/oracle/AUX/azardb/datafile/undotbs1.258.736179685 channel C1: restoring datafile 00004 to /u01/app/oracle/AUX/azardb/datafile/users.256.737964169 channel C1: restoring datafile 00005 to /u01/app/oracle/AUX/azardb/datafile/example.269.736179971 channel C1: reading from backup piece /backups/df_t737969795_s6_p1 channel C1: piece handle=/backups/df_t737969795_s6_p1 tag=TAG20101217T073635 channel C1: restored backup piece 1 channel C1: restore complete, elapsed time: 00:01:27 Finished restore at 17-DEC-10 contents of Memory Script: { switch clone datafile all; } executing Memory Script datafile 1 switched to datafile copy input datafile copy RECID=10 STAMP=737976075 file name=/u01/app/oracle/AUX/azardb/datafile/system.256.736179685 datafile 2 switched to datafile copy input datafile copy RECID=11 STAMP=737976075 file name=/u01/app/oracle/AUX/azardb/datafile/sysaux.257.736179685 datafile 3 switched to datafile copy input datafile copy RECID=12 STAMP=737976075 file name=/u01/app/oracle/AUX/azardb/datafile/undotbs1.258.736179685 datafile 4 switched to datafile copy input datafile copy RECID=13 STAMP=737976075 file name=/u01/app/oracle/AUX/azardb/datafile/users.256.737964169 datafile 5 switched to datafile copy input datafile copy RECID=14 STAMP=737976075 file name=/u01/app/oracle/AUX/azardb/datafile/example.269.736179971 contents of Memory Script: { set until scn 971599;
recover clone database delete archivelog ; } executing Memory Script executing command: SET until clause Starting recover at 17-DEC-10 starting media recovery archived log for thread 1 with sequence 12 is already on disk as file +DATA/azardb/archivelog/2010_12_17/thread_1_seq_12.279.737969947 archived log for thread 1 with sequence 13 is already on disk as file +DATA/azardb/archivelog/2010_12_17/thread_1_seq_13.280.737969949 archived log file name=+DATA/azardb/archivelog/2010_12_17/thread_1_seq_12.279.737969947 thread=1 sequence=12 archived log file name=+DATA/azardb/archivelog/2010_12_17/thread_1_seq_13.280.737969949 thread=1 sequence=13 media recovery complete, elapsed time: 00:00:00 Finished recover at 17-DEC-10 contents of Memory Script: { shutdown clone immediate; startup clone nomount; sql clone "alter system set db_name =
''AUX'' comment= ''Reset to original value by RMAN'' scope=spfile"; sql clone "alter system reset shutdown clone immediate; startup clone nomount; } executing Memory Script database dismounted Oracle instance shut down connected to auxiliary database (not started) Oracle instance started Total System Global Area Fixed Size Variable Size Database Buffers 146472960 bytes 1335080 bytes 92274904 bytes 50331648 bytes db_unique_name scope=spfile";
Redo Buffers
2531328 bytes
allocated channel: C1 channel C1: SID=18 device type=DISK sql statement: alter system set RMAN'' scope=spfile sql statement: alter system reset Oracle instance shut down connected to auxiliary database (not started) Oracle instance started Total System Global Area Fixed Size Variable Size Database Buffers Redo Buffers allocated channel: C1 146472960 bytes 1335080 bytes 92274904 bytes 50331648 bytes 2531328 bytes db_unique_name scope=spfile db_name = ''AUX'' comment= ''Reset to original value by
channel C1: SID=18 device type=DISK sql statement: CREATE CONTROLFILE REUSE SET DATABASE "AUX" RESETLOGS ARCHIVELOG MAXLOGFILES MAXLOGMEMBERS MAXDATAFILES MAXINSTANCES MAXLOGHISTORY LOGFILE 16 3 100 8 292
GROUP 1 ( '/u01/app/oracle/AUX/azardb/onlinelog/group_1.262.736179919', '/u01/app/oracle/AUX/azardb/onlinelog/group_1.263.736179919' ) SIZE 50 M GROUP 2 ( '/u01/app/oracle/AUX/azardb/onlinelog/group_2.264.736179921', '/u01/app/oracle/AUX/azardb/onlinelog/group_2.265.736179925' ) SIZE 50 M GROUP 3 ( '/u01/app/oracle/AUX/azardb/onlinelog/group_3.266.736179927', '/u01/app/oracle/AUX/azardb/onlinelog/group_3.267.736179929' ) SIZE 50 M DATAFILE '/u01/app/oracle/AUX/azardb/datafile/system.256.736179685' CHARACTER SET WE8MSWIN1252 contents of Memory Script: { set newname for tempfile 1 to "/u01/app/oracle/AUX/azardb/tempfile/temp.268.736179955"; switch clone tempfile all; catalog clone datafilecopy
"/u01/app/oracle/AUX/azardb/datafile/sysaux.257.736179685",
10
switch clone datafile all; } executing Memory Script executing command: SET NEWNAME renamed tempfile 1 to /u01/app/oracle/AUX/azardb/tempfile/temp.268.736179955 in control file cataloged datafile copy datafile copy file name=/u01/app/oracle/AUX/azardb/datafile/sysaux.257.736179685 RECID=1 STAMP=737976112 cataloged datafile copy datafile copy file name=/u01/app/oracle/AUX/azardb/datafile/undotbs1.258.736179685 RECID=2 STAMP=737976112 cataloged datafile copy datafile copy file name=/u01/app/oracle/AUX/azardb/datafile/users.256.737964169 RECID=3 STAMP=737976112 cataloged datafile copy datafile copy file name=/u01/app/oracle/AUX/azardb/datafile/example.269.736179971 RECID=4 STAMP=737976113 datafile 2 switched to datafile copy input datafile copy RECID=1 STAMP=737976112 file name=/u01/app/oracle/AUX/azardb/datafile/sysaux.257.736179685 datafile 3 switched to datafile copy input datafile copy RECID=2 STAMP=737976112 file name=/u01/app/oracle/AUX/azardb/datafile/undotbs1.258.736179685 datafile 4 switched to datafile copy input datafile copy RECID=3 STAMP=737976112 file name=/u01/app/oracle/AUX/azardb/datafile/users.256.737964169 datafile 5 switched to datafile copy input datafile copy RECID=4 STAMP=737976113 file name=/u01/app/oracle/AUX/azardb/datafile/example.269.736179971 contents of Memory Script: { Alter clone database open resetlogs; } executing Memory Script database opened Duplicate database was successfully created
11
[oracle@localhost ~]$ sqlplus SQL*Plus: Release 11.2.0.1.0 Production on Fri Dec 17 09:25:45 2010 Copyright (c) 1982, 2009, Oracle. Enter user-name: / as sysdba Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> select name from v$database; NAME --------AUX SQL> select name from v$datafile; NAME -------------------------------------------------------------------------------/u01/app/oracle/AUX/azardb/datafile/system.256.736179685 /u01/app/oracle/AUX/azardb/datafile/sysaux.257.736179685 /u01/app/oracle/AUX/azardb/datafile/undotbs1.258.736179685 /u01/app/oracle/AUX/azardb/datafile/users.256.737964169 /u01/app/oracle/AUX/azardb/datafile/example.269.736179971 SQL> All rights reserved.
Possible Errors: You can get some errors , cann't restore datafile & onlineredo log files, in this case you need to create directory ,It should be indicate. azardb/datafile azardb/onlinelog
12