原创 转载请注明出处
10g中添加很多新特性 当然RMAN 也得到了增强,INCREMENTALLY UPDATED BACKUPS就是其中之一。
此特性有别于传统的增量备份,主要是为了节省恢复时间,他通过合并COPY和增量BACKUPSET来节约时间,举个例子:周1早上 全备(全备为COPY备份) 周2早上 增量 周2晚上 洗白
如果没合并恢复时间为:
周1早上-(使用增量)--周2早上--(使用归档和日志文件)---当前状态
如果合并了恢复时间为:
周1早上-(省去)--周2早上--(使用归档和日志文件)---当前状态
周2早上--(使用归档和日志文件)---当前状态 只需要这段时间
周1早上-(省去)--周2早 这段时间省去。
官方的说明为:
RMAN> BACKUP AS COPY DATABASE;
启动 backup 于 08-2月 -09
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 启动数据文件副本
输入数据文件 fno=00001 name=D:\ORACLE10G\PRODUCT\ORADATA\PP\SYSTEM01.DBF
输出文件名 = D:\ORACLE10G\PRODUCT\FLASH_RECOVERY_AREA\PP\DATAFILE\O1_MF_SYS
RXPJLB8_.DBF 标记 = TAG20090208T211145 recid = 9 时间戳 = 678316351
通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:00:56
通道 ORA_DISK_1: 启动数据文件副本
输入数据文件 fno=00003 name=D:\ORACLE10G\PRODUCT\ORADATA\PP\SYSAUX01.DBF
输出文件名 = D:\ORACLE10G\PRODUCT\FLASH_RECOVERY_AREA\PP\DATAFILE\O1_MF_SYS
RXPLB0H_.DBF 标记 = TAG20090208T211145 recid = 10 时间戳 = 678316387
通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:00:35
通道 ORA_DISK_1: 启动数据文件副本
输入数据文件 fno=00002 name=D:\ORACLE10G\PRODUCT\ORADATA\PP\UNDOTBS01.DBF
输出文件名 = D:\ORACLE10G\PRODUCT\FLASH_RECOVERY_AREA\PP\DATAFILE\O1_MF_UND
_4RXPMFGN_.DBF 标记 = TAG20090208T211145 recid = 11 时间戳 = 678316402
通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:00:07
通道 ORA_DISK_1: 启动数据文件副本
输入数据文件 fno=00004 name=D:\ORACLE10G\PRODUCT\ORADATA\PP\USERS01.DBF
输出文件名 = D:\ORACLE10G\PRODUCT\FLASH_RECOVERY_AREA\PP\DATAFILE\O1_MF_USE
XPMNPG_.DBF 标记 = TAG20090208T211145 recid = 12 时间戳 = 678316405
通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:00:03
通道 ORA_DISK_1: 启动数据文件副本
复制当前控制文件
输出文件名 = D:\ORACLE10G\PRODUCT\FLASH_RECOVERY_AREA\PP\CONTROLFILE\O1_MF_
090208T211145_4RXPMR0Z_.CTL 标记 = TAG20090208T211145 recid = 13 时间戳 = 6
409
通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:00:04
通道 ORA_DISK_1: 启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
在备份集中包含当前的 SPFILE
通道 ORA_DISK_1: 正在启动段 1 于 08-2月 -09
通道 ORA_DISK_1: 已完成段 1 于 08-2月 -09
段句柄=D:\ORACLE10G\PRODUCT\FLASH_RECOVERY_AREA\PP\BACKUPSET\2009_02_08\O1_
SNF_TAG20090208T211145_4RXPMWB8_.BKP 标记=TAG20090208T211145 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:02
完成 backup 于 08-2月 -09
2、增量BACKUPSET备份
RMAN> run
2> {
3> allocate channel c1 type disk;
4> backup incremental level 1 database format='f:\%d_%T_%s1.bak';
5> sql' alter system switch logfile';
6> release channel c1 ;
7> }
释放的通道: ORA_DISK_1
分配的通道: c1
通道 c1: sid=157 devtype=DISK
启动 backup 于 08-2月 -09
通道 c1: 启动增量级别 1 数据文件备份集
通道 c1: 正在指定备份集中的数据文件
输入数据文件 fno=00001 name=D:\ORACLE10G\PRODUCT\ORADATA\PP\SYSTEM01.DBF
输入数据文件 fno=00003 name=D:\ORACLE10G\PRODUCT\ORADATA\PP\SYSAUX01.DBF
输入数据文件 fno=00002 name=D:\ORACLE10G\PRODUCT\ORADATA\PP\UNDOTBS01.DBF
输入数据文件 fno=00004 name=D:\ORACLE10G\PRODUCT\ORADATA\PP\USERS01.DBF
通道 c1: 正在启动段 1 于 08-2月 -09
通道 c1: 已完成段 1 于 08-2月 -09
段句柄=F:\PP_20090208_191.BAK 标记=TAG20090208T211441 注释=NONE
通道 c1: 备份集已完成, 经过时间:00:00:45
通道 c1: 启动增量级别 1 数据文件备份集
通道 c1: 正在指定备份集中的数据文件
备份集中包括当前控制文件
在备份集中包含当前的 SPFILE
通道 c1: 正在启动段 1 于 08-2月 -09
通道 c1: 已完成段 1 于 08-2月 -09
段句柄=F:\PP_20090208_201.BAK 标记=TAG20090208T211441 注释=NONE
通道 c1: 备份集已完成, 经过时间:00:00:06
完成 backup 于 08-2月 -09
sql 语句: alter system switch logfile
释放的通道: c1
3、合并过程(重点)
RMAN> recover copy of database;
启动 recover 于 08-2月 -09
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=157 devtype=DISK
通道 ORA_DISK_1: 正在开始恢复增量数据文件备份集
通道 ORA_DISK_1: 指定要恢复的数据文件副本
恢复数据文件副本 fno=00001 名称=D:\ORACLE10G\PRODUCT\FLASH_RECOVERY_AREA\PP
FILE\O1_MF_SYSTEM_4RXPJLB8_.DBF
恢复数据文件副本 fno=00002 名称=D:\ORACLE10G\PRODUCT\FLASH_RECOVERY_AREA\PP
FILE\O1_MF_UNDOTBS1_4RXPMFGN_.DBF
恢复数据文件副本 fno=00003 名称=D:\ORACLE10G\PRODUCT\FLASH_RECOVERY_AREA\PP
FILE\O1_MF_SYSAUX_4RXPLB0H_.DBF
恢复数据文件副本 fno=00004 名称=D:\ORACLE10G\PRODUCT\FLASH_RECOVERY_AREA\PP
FILE\O1_MF_USERS_4RXPMNPG_.DBF
通道 ORA_DISK_1: 正在读取备份段 F:\PP_20090208_191.BAK
通道 ORA_DISK_1: 已恢复备份段 1
段句柄 = F:\PP_20090208_191.BAK 标记 = TAG20090208T211441
通道 ORA_DISK_1: 恢复完成, 用时: 00:00:07
完成 recover 于 08-2月 -09
4、使用备份文件,重置文件
RMAN> restore database;
启动 restore 于 08-2月 -09
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在恢复数据文件00001
输入数据文件副本 recid=17 stamp=678316568 文件名=D:\ORACLE10G\PRODUCT\FLASH_R
VERY_AREA\PP\DATAFILE\O1_MF_SYSTEM_4RXPJLB8_.DBF
数据文件 00001 的恢复目标: D:\ORACLE10G\PRODUCT\ORADATA\PP\SYSTEM01.DBF
通道 ORA_DISK_1: 已复制数据文件 00001 的数据文件副本
输出文件名=D:\ORACLE10G\PRODUCT\ORADATA\PP\SYSTEM01.DBF recid=18 stamp=678316
通道 ORA_DISK_1: 正在恢复数据文件00002
输入数据文件副本 recid=15 stamp=678316566 文件名=D:\ORACLE10G\PRODUCT\FLASH_R
VERY_AREA\PP\DATAFILE\O1_MF_UNDOTBS1_4RXPMFGN_.DBF
数据文件 00002 的恢复目标: D:\ORACLE10G\PRODUCT\ORADATA\PP\UNDOTBS01.DBF
通道 ORA_DISK_1: 已复制数据文件 00002 的数据文件副本
输出文件名=D:\ORACLE10G\PRODUCT\ORADATA\PP\UNDOTBS01.DBF recid=19 stamp=67831
2
通道 ORA_DISK_1: 正在恢复数据文件00003
输入数据文件副本 recid=16 stamp=678316567 文件名=D:\ORACLE10G\PRODUCT\FLASH_R
VERY_AREA\PP\DATAFILE\O1_MF_SYSAUX_4RXPLB0H_.DBF
数据文件 00003 的恢复目标: D:\ORACLE10G\PRODUCT\ORADATA\PP\SYSAUX01.DBF
通道 ORA_DISK_1: 已复制数据文件 00003 的数据文件副本
输出文件名=D:\ORACLE10G\PRODUCT\ORADATA\PP\SYSAUX01.DBF recid=20 stamp=678316
通道 ORA_DISK_1: 正在恢复数据文件00004
输入数据文件副本 recid=14 stamp=678316566 文件名=D:\ORACLE10G\PRODUCT\FLASH_R
VERY_AREA\PP\DATAFILE\O1_MF_USERS_4RXPMNPG_.DBF
数据文件 00004 的恢复目标: D:\ORACLE10G\PRODUCT\ORADATA\PP\USERS01.DBF
通道 ORA_DISK_1: 已复制数据文件 00004 的数据文件副本
输出文件名=D:\ORACLE10G\PRODUCT\ORADATA\PP\USERS01.DBF recid=21 stamp=6783169
完成 restore 于 08-2月 -09
5、恢复
RMAN> recover database;
启动 recover 于 08-2月 -09
使用通道 ORA_DISK_1
正在开始介质的恢复
介质恢复完成, 用时: 00:00:03
完成 recover 于 08-2月 -09
可以看出恢复过程并没有使用到我们的增量备份。