冗余备份概念
RMAN提供了一种更谨慎的备份策略:duplexed方式备份,其实质就是在生成备份集的同时,向指定位置copy指定份数(最大不超过4)的备份集复制,以避免在灾难性事故时数据库损坏和备份丢失的情况下导致完全崩溃,提高备份可用性。
RMAN有三种方式的duplexed备份。
在RMAN中执行backup命令时指定copies参数
RMAN> backup copies 2 tablespace users format 'D:/backup/USER_%U_1','D:/backup/U
SER_%U_2';
启动 backup 于 18-2月 -09
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在启动 full 数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00009 name=E:/ORACLE/ORADATA/ORADB/USERS01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 18-2月 -09
通道 ORA_DISK_1: 已完成段 1 于 18-2月 -09, 有 2 个副本
段 handle=D:/BACKUP/USER_0TK7MDO6_1_1_1 comment=NONE
段 handle=D:/BACKUP/USER_0TK7MDO6_1_2_2 comment=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:01
完成 backup 于 18-2月 -09
启动 Control File and SPFILE Autobackup 于 18-2月 -09
段 handle=D:/BACKUP/C_C-2424717714-20090218-01 comment=NONE
完成 Control File and SPFILE Autobackup 于 18-2月 -09
―――――――――――――――――――
上述命令在执行备份的同时,自动生成当前备份集的一个copy到指定位置,如果不为copy指定存储位置,则会存储到默认的位置。但一旦你指定位置,就必须指定全部的存储位置,下面的命令将提示错误。
RMAN> backup copies 2 tablespace users 'D:/backup/user_%U';
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00558: error encountered while parsing input commands
RMAN-01005: syntax error: found "single-quoted-string": expecting one of: "archi
velog, backup, backupset, channel, comma, controlfilecopy, current, database, da
tafile, datafilecopy, delete, diskratio, filesperset, format, force, include, ke
ep, (, maxsetsize, noexclude, nokeep, not, parms, pool, plus, ;, skip, spfile, s
etsize, tablespace, tag"
RMAN-01007: at line 1 column 34 file: standard input
Set backup copies命令
在run{}命令块中利用set backup copies命令为该块中下一个set backup copies命令之前的备份设置冗余备份方式。
RMAN> run{
2> set backup copies 2;
3> backup device type disk tablespace users;
4> set backup copies 3;
5> backup device type disk format 'D:/backup/%U','D:/backup/%U','D:/backup/%U' t
ablespace users;
6> }
正在执行命令: SET BACKUP COPIES
启动 backup 于 18-2月 -09
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在启动 full 数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00009 name=E:/ORACLE/ORADATA/ORADB/USERS01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 18-2月 -09
通道 ORA_DISK_1: 已完成段 1 于 18-2月 -09, 有 2 个副本
段 handle=E:/ORACLE/ORA92/DATABASE/13K7MEVM_1_1 comment=NONE
段 handle=E:/ORACLE/ORA92/DATABASE/13K7MEVM_1_2 comment=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:01
完成 backup 于 18-2月 -09
启动 Control File and SPFILE Autobackup 于 18-2月 -09
段 handle=D:/BACKUP/C_C-2424717714-20090218-04 comment=NONE
完成 Control File and SPFILE Autobackup 于 18-2月 -09
正在执行命令: SET BACKUP COPIES
启动 backup 于 18-2月 -09
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在启动 full 数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00009 name=E:/ORACLE/ORADATA/ORADB/USERS01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 18-2月 -09
通道 ORA_DISK_1: 已完成段 1 于 18-2月 -09, 有 3 个副本
段 handle=D:/BACKUP/15K7MEVR_1_1 comment=NONE
段 handle=D:/BACKUP/15K7MEVR_1_2 comment=NONE
段 handle=D:/BACKUP/15K7MEVR_1_3 comment=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:01
完成 backup 于 18-2月 -09
启动 Control File and SPFILE Autobackup 于 18-2月 -09
段 handle=D:/BACKUP/C_C-2424717714-20090218-05 comment=NONE
完成 Control File and SPFILE Autobackup 于 18-2月 -09
Configure backup copies命令
Configure backup copies命令可以为指定的设备类型设置默认的备份拷贝份数,这个配置仅适用于数据文件与归档重做日志文件和设备,并且只有在使用自动分配的通道时才能够使用configure backup copies命令设置的配置。
RMAN> CONFIGURE DEFAULT DEVICE TYPE TO DISK;
RMAN> CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE disk TO 2;
RMAN> CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE disk TO 2;
上面的命令将disk设置上数据文件与归档文件的copies设置为2,当再执行backup备份时,将会自动生成2份数据文件和归档文件的备份集。
RMAN> backup tablespace users plus archivelog;
启动 backup 于 18-2月 -09
当前日志已存档
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=12 devtype=DISK
通道 ORA_DISK_1: 正在启动存档日志备份集
通道 ORA_DISK_1: 正在指定备份集中的存档日志
输入存档日志线程 =1 序列 =1 记录 ID=10 时间戳=679079372
输入存档日志线程 =1 序列 =2 记录 ID=11 时间戳=679079373
输入存档日志线程 =1 序列 =3 记录 ID=12 时间戳=679079376
输入存档日志线程 =1 序列 =4 记录 ID=13 时间戳=679079396
输入存档日志线程 =1 序列 =5 记录 ID=14 时间戳=679165146
输入存档日志线程 =1 序列 =6 记录 ID=15 时间戳=679165153
输入存档日志线程 =1 序列 =7 记录 ID=16 时间戳=679165973
通道 ORA_DISK_1: 正在启动段 1 于 18-2月 -09
通道 ORA_DISK_1: 已完成段 1 于 18-2月 -09, 有 2 个副本
段 handle=E:/ORACLE/ORA92/DATABASE/1FK7MG0L_1_1 comment=NONE
段 handle=E:/ORACLE/ORA92/DATABASE/1FK7MG0L_1_2 comment=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:27
完成 backup 于 18-2月 -09
启动 backup 于 18-2月 -09
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在启动 full 数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00009 name=E:/ORACLE/ORADATA/ORADB/USERS01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 18-2月 -09
通道 ORA_DISK_1: 已完成段 1 于 18-2月 -09, 有 2 个副本
段 handle=E:/ORACLE/ORA92/DATABASE/1GK7MG1I_1_1 comment=NONE
段 handle=E:/ORACLE/ORA92/DATABASE/1GK7MG1I_1_2 comment=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:01
完成 backup 于 18-2月 -09
启动 backup 于 18-2月 -09
当前日志已存档
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在启动存档日志备份集
通道 ORA_DISK_1: 正在指定备份集中的存档日志
输入存档日志线程 =1 序列 =8 记录 ID=17 时间戳=679166003
通道 ORA_DISK_1: 正在启动段 1 于 18-2月 -09
通道 ORA_DISK_1: 已完成段 1 于 18-2月 -09, 有 2 个副本
段 handle=E:/ORACLE/ORA92/DATABASE/1HK7MG1K_1_1 comment=NONE
段 handle=E:/ORACLE/ORA92/DATABASE/1HK7MG1K_1_2 comment=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:02
完成 backup 于 18-2月 -09
启动 Control File and SPFILE Autobackup 于 18-2月 -09
段 handle=D:/BACKUP/C_C-2424717714-20090218-0A comment=NONE
完成 Control File and SPFILE Autobackup 于 18-2月 -09