RMAN-06059: expected archived log not found, loss of archived log compromises recoverability

归档日志被物理删除后执行rman操作报错:

RMAN> backup database plus archivelog;





Starting backup at 01-JUL-2015 12:55:59

current log archived

using target database control file instead of recovery catalog

allocated channel: ORA_DISK_1

channel ORA_DISK_1: SID=39 device type=DISK

RMAN-00571: ===========================================================

RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

RMAN-00571: =========================================================== RMAN-03002: failure of backup plus archivelog command at 07/01/2015 12:56:00 RMAN-06059: expected archived log not found, loss of archived log compromises recoverability ORA-19625: error identifying file /home/oracle/arch/1_4_882107304.dbf ORA-27037: unable to obtain file status Linux-x86_64 Error: 2: No such file or directory Additional information: 3

 

处理方法:(crosscheck 会将找不到的归档日志标记为expired状态)

RMAN> crosscheck archivelog all;



released channel: ORA_DISK_1

allocated channel: ORA_DISK_1

channel ORA_DISK_1: SID=39 device type=DISK

validation failed for archived log

archived log file name=/home/oracle/arch/1_4_882107304.dbf RECID=4 STAMP=882110247

validation failed for archived log

archived log file name=/home/oracle/arch/1_5_882107304.dbf RECID=5 STAMP=882110250

validation failed for archived log

archived log file name=/home/oracle/arch/1_6_882107304.dbf RECID=6 STAMP=882110250

validation failed for archived log

archived log file name=/home/oracle/arch/1_1_882110245.dbf RECID=7 STAMP=883736575

validation failed for archived log

archived log file name=/home/oracle/arch/1_2_882110245.dbf RECID=8 STAMP=883739175

validation succeeded for archived log

archived log file name=/home/oracle/arch/1_3_882110245.dbf RECID=9 STAMP=883918559

Crosschecked 6 objects





RMAN> backup database plus archivelog;

 

此外,可以查看一下归档日志的状态:

SQL> select sequence#, 2 name, 3 status, 4 decode(status,'A','available','D','deleted','U','unavailable','X','expired') 5 from v$archived_log; SEQUENCE# NAME S DECODE(STAT ---------- ---------------------------------------- - ----------- 4 /u01/app/oracle/oradata/yb1/redo01.log A available 5 /u01/app/oracle/oradata/yb1/redo02.log A available 6 /u01/app/oracle/oradata/yb1/redo03.log A available 4 /home/oracle/arch/1_4_882107304.dbf X expired 5 /home/oracle/arch/1_5_882107304.dbf X expired 6 /home/oracle/arch/1_6_882107304.dbf X expired 1 /home/oracle/arch/1_1_882110245.dbf X expired 2 /home/oracle/arch/1_2_882110245.dbf X expired 3 /home/oracle/arch/1_3_882110245.dbf A available 4 /home/oracle/arch/1_4_882110245.dbf A available 5 /home/oracle/arch/1_5_882110245.dbf A available 11 rows selected. SQL> 

 

如果归档日志是被物理移动了位置,可以手动将归档日志注册进去:

RMAN> catalog start with '/xxx/xxx';#注册路径
RMAN> catalog archivelog '/home/oracle/arch/1_3_882110245.dbf';#注册具体归档日志

 

你可能感兴趣的:(Promise)