--测试库的归档日志文件被无意删除了,下面是解决步骤
RMAN> backup as compressed backupset database plus archivelog delete input;
启动 backup 于 24-2月 -12
当前日志已存档
使用通道 ORA_DISK_1
使用通道 ORA_DISK_2
MAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: backup plus archivelog 命令 (在 02/24/2012 01:02:19 上) 失败
RMAN-06059: 没有找到预期的归档日志, 归档日志的丢失将影响可恢复性
ORA-19625: 识别文件E:OraclePRODUCT10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOGARC00148_0684537946.001时出错
ORA-27041: 无法打开文件
OSD-04002: 无法打开文件
O/S-Error: (OS 2) 系统找不到指定的文件。
RMAN> crosscheck archivelog all;
释放的通道: ORA_DISK_1
释放的通道: ORA_DISK_2
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=138 devtype=DISK
分配的通道: ORA_DISK_2
通道 ORA_DISK_2: sid=137 devtype=DISK
对归档日志的验证失败
存档日志文件名 =E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOGARC00149_0684537946.001 记录 ID=94 时间戳 =776048489
对归档日志的验证失败
存档日志文件名 =E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOGARC00150_0684537946.001 记录 ID=95 时间戳 =776048537
已交叉检验的 2 对象
对归档日志的验证成功
存档日志文件名 =E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOGARC00148_0684537946.001 记录 ID=93 时间戳 =776048448
已交叉检验的 1 对象
可以用RMAN>delete expired archivelog all;或者以下命令
RMAN> delete archivelog like 'E:ORACLEPRODUCT10.2.0FLASH%ARC00148%_0684537946.001';
释放的通道: ORA_DISK_1
释放的通道: ORA_DISK_2
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=138 devtype=DISK
分配的通道: ORA_DISK_2
通道 ORA_DISK_2: sid=137 devtype=DISK
已存档的日志副本列表
关键字 Thrd Seq S 短时间 名称
------- ---- ------- - ---------- ----
1658 1 148 X 24-2月 -12 E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOGARC00148_0684537946.001
是否确定要删除以上对象 (输入 YES 或 NO)? yes
已删除的存档日志
存档日志文件名 =E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOGARC00148_0684537946.001 记录 ID=93 时间戳 =776048448
1 对象已删除
RMAN> backup as compressed backupset database plus archivelog delete input;
启动 backup 于 24-2月 -12
当前日志已存档
使用通道 ORA_DISK_1
使用通道 ORA_DISK_2
通道 ORA_DISK_1: 启动压缩的归档日志备份集
通道 ORA_DISK_1: 正在指定备份集中的存档日志
输入存档日志线程 =1 序列 =149 记录 ID=94 时间戳=776048489
输入存档日志线程 =1 序列 =150 记录 ID=95 时间戳=776048537
通道 ORA_DISK_1: 正在启动段 1 于 24-2月 -12
通道 ORA_DISK_2: 启动压缩的归档日志备份集
通道 ORA_DISK_2: 正在指定备份集中的存档日志
输入存档日志线程 =1 序列 =151 记录 ID=96 时间戳=776048684
通道 ORA_DISK_2: 正在启动段 1 于 24-2月 -12
通道 ORA_DISK_1: 已完成段 1 于 24-2月 -12
段句柄=E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLAUTOBACKUPORCL_96_ORCLXXXX_1212318678.BAK 标记=TAG20120224T010446 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:02
通道 ORA_DISK_1: 正在删除存档日志
存档日志文件名 =E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOGARC00149_0684537946.001 记录 ID=94 时间戳 =776048489
存档日志文件名 =E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOGARC00150_0684537946.001 记录 ID=95 时间戳 =776048537
通道 ORA_DISK_2: 已完成段 1 于 24-2月 -12
段句柄=E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLAUTOBACKUPORCL_97_ORCLXXXX_1212318678.BAK 标记=TAG20120224T010446 注释=NONE
通道 ORA_DISK_2: 备份集已完成, 经过时间:00:00:02
通道 ORA_DISK_2: 正在删除存档日志
存档日志文件名 =E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOGARC00151_0684537946.001 记录 ID=96 时间戳 =776048684
完成 backup 于 24-2月 -12
启动 backup 于 24-2月 -12
使用通道 ORA_DISK_1
使用通道 ORA_DISK_2
通道 ORA_DISK_1: 启动压缩的全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00001 name=E:ORACLEPRODUCT10.2.0ORADATAORCLSYSTEM01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 24-2月 -12
通道 ORA_DISK_2: 启动压缩的全部数据文件备份集
通道 ORA_DISK_2: 正在指定备份集中的数据文件
输入数据文件 fno=00003 name=E:ORACLEPRODUCT10.2.0ORADATAORCLSYSAUX01.DBF
输入数据文件 fno=00002 name=E:ORACLEPRODUCT10.2.0ORADATAORCLUNDOTBS01.DBF
通道 ORA_DISK_2: 正在启动段 1 于 24-2月 -12
通道 ORA_DISK_2: 已完成段 1 于 24-2月 -12
段句柄=E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLAUTOBACKUPORCL_99_ORCLXXXX_1212318678.BAK 标记=TAG20120224T010450 注释=NONE
通道 ORA_DISK_2: 备份集已完成, 经过时间:00:00:46
通道 ORA_DISK_2: 启动压缩的全部数据文件备份集
通道 ORA_DISK_2: 正在指定备份集中的数据文件
输入数据文件 fno=00004 name=E:ORACLEPRODUCT10.2.0ORADATAORCLUSERS01.DBF
通道 ORA_DISK_2: 正在启动段 1 于 24-2月 -12
通道 ORA_DISK_1: 已完成段 1 于 24-2月 -12
段句柄=E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLAUTOBACKUPORCL_98_ORCLXXXX_1212318678.BAK 标记=TAG20120224T010450 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:47
通道 ORA_DISK_1: 启动压缩的全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00005 name=E:ORACLEPRODUCT10.2.0ORADATAORCLEXAMPLE01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 24-2月 -12
通道 ORA_DISK_1: 已完成段 1 于 24-2月 -12
段句柄=E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLAUTOBACKUPORCL_101_ORCLXXXX_1212318678.BAK 标记=TAG20120224T010450 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:23
通道 ORA_DISK_2: 已完成段 1 于 24-2月 -12
段句柄=E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLAUTOBACKUPORCL_100_ORCLXXXX_1212318678.BAK 标记=TAG20120224T010450 注释=NONE
通道 ORA_DISK_2: 备份集已完成, 经过时间:00:00:24
完成 backup 于 24-2月 -12
启动 backup 于 24-2月 -12
当前日志已存档
使用通道 ORA_DISK_1
使用通道 ORA_DISK_2
通道 ORA_DISK_1: 启动压缩的归档日志备份集
通道 ORA_DISK_1: 正在指定备份集中的存档日志
输入存档日志线程 =1 序列 =152 记录 ID=97 时间戳=776048761
通道 ORA_DISK_1: 正在启动段 1 于 24-2月 -12
通道 ORA_DISK_1: 已完成段 1 于 24-2月 -12
段句柄=E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLAUTOBACKUPORCL_102_ORCLXXXX_1212318678.BAK 标记=TAG20120224T010603 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:02
通道 ORA_DISK_1: 正在删除存档日志
存档日志文件名 =E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOGARC00152_0684537946.001 记录 ID=97 时间戳 =776048761
完成 backup 于 24-2月 -12
启动 Control File and SPFILE Autobackup 于 24-2月 -12
段 handle=E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLAUTOBACKUP2012_02_24O1_MF_S_776048766_7NDWHZWB_.BKP comment=NONE
完成 Control File and SPFILE Autobackup 于 24-2月 -12
RMAN>
--测试库中的archivelog文件被无意删除了,但控制文件中该文件仍标记为有效(见select name,sequence#,resetlogs_id,archived,deleted,status from v$archived_log结果集中的deleted和status列);故rman做归档备份时还是要备份被无意删除的文件,但文件已经被物理删除,磁盘上找不到就会报错,通过rman crosscheck archivelog all也可以看到文件已经失效,所以备份之前先将归档文件从控制文件中删除,然后备份就会成功;