[20170626]rman merge例子.txt
1.环境:
SCOTT@book> @ &r/ver1
PORT_STRING VERSION BANNER
------------------------------ -------------- --------------------------------------------------------------------------------
x86_64/Linux 2.4.xx 11.2.0.4.0 Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
2.别人问的问题,要建立备份,不断应用日志,常用的方式如下:
RUN
{
backup incremental level 1 for recover of copy with tag 'incr_update' database ;
recover copy of database with tag 'incr_update' ;
}
--//但这样数据文件建立在闪回区,采用OMF格式.而如果采用如下方式执行:
RUN
{
backup incremental level 1 for recover of copy with tag 'incr_update' database format '/home/oracle/backup/%b';
recover copy of database with tag 'incr_update' ;
}
Starting backup at 2017-06-26 10:54:36
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=35 device type=DISK
allocated channel: ORA_DISK_2
channel ORA_DISK_2: SID=46 device type=DISK
allocated channel: ORA_DISK_3
channel ORA_DISK_3: SID=56 device type=DISK
no parent backup or copy of datafile 2 found
no parent backup or copy of datafile 3 found
no parent backup or copy of datafile 1 found
no parent backup or copy of datafile 5 found
no parent backup or copy of datafile 4 found
no parent backup or copy of datafile 6 found
channel ORA_DISK_1: starting datafile copy
input datafile file number=00002 name=/mnt/ramdisk/book/sysaux01.dbf
channel ORA_DISK_2: starting datafile copy
input datafile file number=00003 name=/mnt/ramdisk/book/undotbs01.dbf
channel ORA_DISK_3: starting datafile copy
input datafile file number=00001 name=/mnt/ramdisk/book/system01.dbf
output file name=/u01/app/oracle/fast_recovery_area/BOOK/datafile/o1_mf_sysaux_do0xvgb8_.dbf tag=INCR_UPDATE RECID=27 STAMP=947674489
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:15
channel ORA_DISK_1: starting datafile copy
input datafile file number=00005 name=/mnt/ramdisk/book/example01.dbf
output file name=/u01/app/oracle/fast_recovery_area/BOOK/datafile/o1_mf_undotbs1_do0xvgbh_.dbf tag=INCR_UPDATE RECID=26 STAMP=947674489
channel ORA_DISK_2: datafile copy complete, elapsed time: 00:00:15
channel ORA_DISK_2: starting datafile copy
input datafile file number=00004 name=/mnt/ramdisk/book/users01.dbf
output file name=/u01/app/oracle/fast_recovery_area/BOOK/datafile/o1_mf_system_do0xvgbn_.dbf tag=INCR_UPDATE RECID=25 STAMP=947674489
channel ORA_DISK_3: datafile copy complete, elapsed time: 00:00:15
channel ORA_DISK_3: starting datafile copy
input datafile file number=00006 name=/mnt/ramdisk/book/tea01.dbf
output file name=/u01/app/oracle/fast_recovery_area/BOOK/datafile/o1_mf_example_do0xvxh1_.dbf tag=INCR_UPDATE RECID=30 STAMP=947674494
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:01
output file name=/u01/app/oracle/fast_recovery_area/BOOK/datafile/o1_mf_users_do0xvxlr_.dbf tag=INCR_UPDATE RECID=29 STAMP=947674494
channel ORA_DISK_2: datafile copy complete, elapsed time: 00:00:01
output file name=/u01/app/oracle/fast_recovery_area/BOOK/datafile/o1_mf_tea_do0xvxog_.dbf tag=INCR_UPDATE RECID=28 STAMP=947674494
channel ORA_DISK_3: datafile copy complete, elapsed time: 00:00:01
Finished backup at 2017-06-26 10:54:54
Starting recover at 2017-06-26 10:54:54
using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
no copy of datafile 1 found to recover
no copy of datafile 2 found to recover
no copy of datafile 3 found to recover
no copy of datafile 4 found to recover
no copy of datafile 5 found to recover
no copy of datafile 6 found to recover
Finished recover at 2017-06-26 10:54:54
Starting Control File and SPFILE Autobackup at 2017-06-26 10:54:54
piece handle=/u01/app/oracle/fast_recovery_area/BOOK/autobackup/2017_06_26/o1_mf_s_947674494_do0xvz0h_.bkp comment=NONE
Finished Control File and SPFILE Autobackup at 2017-06-26 10:54:55
RMAN> **end-of-file**
--//可以发现这样不行.指定format无效.虽然以上脚本一直可以应用,主要是文件名采用OMF格式.数据文件放在闪回区.
--//可以采用如下方式,先备份成datafilecopy文件.然后注册为增量备份.就ok了,看下面的测试.
RMAN> backup as copy database format '/home/oracle/backup/%b' tag 'incr_update';
Starting backup at 2017-06-26 11:00:16
using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
channel ORA_DISK_1: starting datafile copy
input datafile file number=00002 name=/mnt/ramdisk/book/sysaux01.dbf
channel ORA_DISK_2: starting datafile copy
input datafile file number=00003 name=/mnt/ramdisk/book/undotbs01.dbf
channel ORA_DISK_3: starting datafile copy
input datafile file number=00001 name=/mnt/ramdisk/book/system01.dbf
output file name=/home/oracle/backup/sysaux01.dbf tag=INCR_UPDATE RECID=38 STAMP=947674828
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:15
channel ORA_DISK_1: starting datafile copy
input datafile file number=00005 name=/mnt/ramdisk/book/example01.dbf
output file name=/home/oracle/backup/undotbs01.dbf tag=INCR_UPDATE RECID=39 STAMP=947674828
channel ORA_DISK_2: datafile copy complete, elapsed time: 00:00:15
channel ORA_DISK_2: starting datafile copy
input datafile file number=00004 name=/mnt/ramdisk/book/users01.dbf
output file name=/home/oracle/backup/system01.dbf tag=INCR_UPDATE RECID=37 STAMP=947674828
channel ORA_DISK_3: datafile copy complete, elapsed time: 00:00:15
channel ORA_DISK_3: starting datafile copy
input datafile file number=00006 name=/mnt/ramdisk/book/tea01.dbf
output file name=/home/oracle/backup/example01.dbf tag=INCR_UPDATE RECID=42 STAMP=947674833
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:01
output file name=/home/oracle/backup/users01.dbf tag=INCR_UPDATE RECID=41 STAMP=947674833
channel ORA_DISK_2: datafile copy complete, elapsed time: 00:00:01
output file name=/home/oracle/backup/tea01.dbf tag=INCR_UPDATE RECID=40 STAMP=947674832
channel ORA_DISK_3: datafile copy complete, elapsed time: 00:00:01
Finished backup at 2017-06-26 11:00:33
Starting Control File and SPFILE Autobackup at 2017-06-26 11:00:33
piece handle=/u01/app/oracle/fast_recovery_area/BOOK/autobackup/2017_06_26/o1_mf_s_947674833_do0y6kmk_.bkp comment=NONE
Finished Control File and SPFILE Autobackup at 2017-06-26 11:00:34
--//但是这样的文件非0级备份.参考链接:
--//blog.itpub.net/267265/viewspace-1867253/
--//blog.itpub.net/267265/viewspace-1832475/
RMAN> catalog datafilecopy '/home/oracle/backup/system01.dbf' level 0 ;
cataloged datafile copy
datafile copy file name=/home/oracle/backup/system01.dbf RECID=43 STAMP=947675261
catalog datafilecopy '/home/oracle/backup/sysaux01.dbf' level 0 ;
catalog datafilecopy '/home/oracle/backup/example01.dbf' level 0 ;
catalog datafilecopy '/home/oracle/backup/undotbs01.dbf' level 0 ;
catalog datafilecopy '/home/oracle/backup/users01.dbf' level 0 ;
catalog datafilecopy '/home/oracle/backup/tea01.dbf' level 0 ;
--//不知道如何一次搞定.
RMAN> recover copy of database with tag incr_update;
Starting recover at 2017-06-26 11:12:07
using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
no copy of datafile 1 found to recover
no copy of datafile 2 found to recover
no copy of datafile 3 found to recover
no copy of datafile 4 found to recover
no copy of datafile 5 found to recover
no copy of datafile 6 found to recover
Finished recover at 2017-06-26 11:12:07
Starting Control File and SPFILE Autobackup at 2017-06-26 11:12:07
piece handle=/u01/app/oracle/fast_recovery_area/BOOK/autobackup/2017_06_26/o1_mf_s_947675527_do0yw76w_.bkp comment=NONE
Finished Control File and SPFILE Autobackup at 2017-06-26 11:12:08
$ cat merge.rman
RUN
{
backup incremental level 1 for recover of copy with tag 'incr_update' database ;
recover copy of database with tag 'incr_update' ;
}
Starting backup at 2017-06-26 11:19:50
using target database control file instead of recovery catalog
channel ORA_DISK_3: SID=46 device type=DISK
channel ORA_DISK_1: starting incremental level 1 datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00002 name=/mnt/ramdisk/book/sysaux01.dbf
input datafile file number=00005 name=/mnt/ramdisk/book/example01.dbf
channel ORA_DISK_1: starting piece 1 at 2017-06-26 11:19:51
channel ORA_DISK_2: starting incremental level 1 datafile backup set
channel ORA_DISK_2: specifying datafile(s) in backup set
input datafile file number=00003 name=/mnt/ramdisk/book/undotbs01.dbf
input datafile file number=00006 name=/mnt/ramdisk/book/tea01.dbf
channel ORA_DISK_2: starting piece 1 at 2017-06-26 11:19:51
channel ORA_DISK_3: starting incremental level 1 datafile backup set
channel ORA_DISK_3: specifying datafile(s) in backup set
input datafile file number=00001 name=/mnt/ramdisk/book/system01.dbf
input datafile file number=00004 name=/mnt/ramdisk/book/users01.dbf
channel ORA_DISK_3: starting piece 1 at 2017-06-26 11:19:52
channel ORA_DISK_1: finished piece 1 at 2017-06-26 11:19:53
piece handle=/u01/app/oracle/fast_recovery_area/BOOK/backupset/2017_06_26/o1_mf_nnnd1_INCR_UPDATE_do0zbqyz_.bkp tag=INCR_UPDATE comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:02
channel ORA_DISK_2: finished piece 1 at 2017-06-26 11:19:53
piece handle=/u01/app/oracle/fast_recovery_area/BOOK/backupset/2017_06_26/o1_mf_nnnd1_INCR_UPDATE_do0zbqz6_.bkp tag=INCR_UPDATE comment=NONE
channel ORA_DISK_2: backup set complete, elapsed time: 00:00:02
channel ORA_DISK_3: finished piece 1 at 2017-06-26 11:19:53
piece handle=/u01/app/oracle/fast_recovery_area/BOOK/backupset/2017_06_26/o1_mf_nnnd1_INCR_UPDATE_do0zbr04_.bkp tag=INCR_UPDATE comment=NONE
channel ORA_DISK_3: backup set complete, elapsed time: 00:00:01
Finished backup at 2017-06-26 11:19:53
Starting recover at 2017-06-26 11:19:53
using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
channel ORA_DISK_1: starting incremental datafile backup set restore
channel ORA_DISK_1: specifying datafile copies to recover
recovering datafile copy file number=00001 name=/home/oracle/backup/system01.dbf
recovering datafile copy file number=00004 name=/home/oracle/backup/users01.dbf
channel ORA_DISK_1: reading from backup piece /u01/app/oracle/fast_recovery_area/BOOK/backupset/2017_06_26/o1_mf_nnnd1_INCR_UPDATE_do0zbr04_.bkp
channel ORA_DISK_2: starting incremental datafile backup set restore
channel ORA_DISK_2: specifying datafile copies to recover
recovering datafile copy file number=00002 name=/home/oracle/backup/sysaux01.dbf
recovering datafile copy file number=00005 name=/home/oracle/backup/example01.dbf
channel ORA_DISK_2: reading from backup piece /u01/app/oracle/fast_recovery_area/BOOK/backupset/2017_06_26/o1_mf_nnnd1_INCR_UPDATE_do0zbqyz_.bkp
channel ORA_DISK_3: starting incremental datafile backup set restore
channel ORA_DISK_3: specifying datafile copies to recover
recovering datafile copy file number=00003 name=/home/oracle/backup/undotbs01.dbf
recovering datafile copy file number=00006 name=/home/oracle/backup/tea01.dbf
channel ORA_DISK_3: reading from backup piece /u01/app/oracle/fast_recovery_area/BOOK/backupset/2017_06_26/o1_mf_nnnd1_INCR_UPDATE_do0zbqz6_.bkp
channel ORA_DISK_1: piece handle=/u01/app/oracle/fast_recovery_area/BOOK/backupset/2017_06_26/o1_mf_nnnd1_INCR_UPDATE_do0zbr04_.bkp tag=INCR_UPDATE
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:00
channel ORA_DISK_2: piece handle=/u01/app/oracle/fast_recovery_area/BOOK/backupset/2017_06_26/o1_mf_nnnd1_INCR_UPDATE_do0zbqyz_.bkp tag=INCR_UPDATE
channel ORA_DISK_2: restored backup piece 1
channel ORA_DISK_2: restore complete, elapsed time: 00:00:00
channel ORA_DISK_3: piece handle=/u01/app/oracle/fast_recovery_area/BOOK/backupset/2017_06_26/o1_mf_nnnd1_INCR_UPDATE_do0zbqz6_.bkp tag=INCR_UPDATE
channel ORA_DISK_3: restored backup piece 1
channel ORA_DISK_3: restore complete, elapsed time: 00:00:00
Finished recover at 2017-06-26 11:19:53
Starting Control File and SPFILE Autobackup at 2017-06-26 11:19:53
piece handle=/u01/app/oracle/fast_recovery_area/BOOK/autobackup/2017_06_26/o1_mf_s_947675993_do0zbson_.bkp comment=NONE
Finished Control File and SPFILE Autobackup at 2017-06-26 11:19:54
RMAN> **end-of-file**
3.可以做一个简单验证:
$ strings /home/oracle/backup/tea01.dbf | grep -i zzzz
SCOTT@book> create table ttt tablespace tea as select 'zzzzz' name from dual connect by level<=10;
Table created.
RMAN> @ merge.rman
$ strings /home/oracle/backup/tea01.dbf | grep -i zzzz|wc
10 10 69
--//说明ok!!