重庆思庄Oracle、Redhat认证学习论坛

标题: 使用rman执行recover database 的时候出现RMAN-06054的错误提示 [打印本页]

作者: jiawang    时间: 2022-8-3 11:03
标题: 使用rman执行recover database 的时候出现RMAN-06054的错误提示
RMAN>  recover database;

Starting recover at 03-AUG-22
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=44 device type=DISK

starting media recovery

archived log for thread 1 with sequence 0 is already on disk as file /u01/app/oracle/oradata/orcl/redo01.log
channel ORA_DISK_1: starting archived log restore to default destination
channel ORA_DISK_1: restoring archived log
archived log thread=1 sequence=145
channel ORA_DISK_1: reading from backup piece /home/oracle/backup/arch_ORCL_20220802_1c145uk8_1_1.arc
channel ORA_DISK_1: piece handle=/home/oracle/backup/arch_ORCL_20220802_1c145uk8_1_1.arc tag=TAG20220802T173607
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
archived log file name=/u01/app/oracle/product/19.3.0/db_1/dbs/arch1_145_1047224844.dbf thread=1 sequence=145
unable to find archived log
archived log thread=1 sequence=146
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 08/03/2022 10:50:18
RMAN-06054: media recovery requesting unknown archived log for thread 1 with sequence 146 and starting SCN of 2556538


在11g官方文档error messages中对错误描述如下:
RMAN-06054: media recovery requesting unknown archived log for thread string with sequence string and starting SCN of string      Cause: Media recovery is requesting a log whose existence is not recorded in the recovery catalog or target database control file.  
     Action: If a copy of the log is available, then add it to the recovery catalog and/or control file via a CATALOG command and then retry the RECOVER command. If not, then a point-in-time recovery up to the missing log is the only alternative and database can be opened using ALTER DATABASE OPEN RESETLOGS command.  
  
可见,出先此错误的原因是恢复需要的日志记录在控制文件或恢复目录中找不到。解决方法分两种情况:  
1.如果相关的日志存在且可用的话,就将此日志记录添加到控制文件或恢复目录中。  
2.如果相关的日志已经被删除了或不可用了,那么就按照错误的提示scn将数据库恢复到此scn,本案例是152305555。也就是说此时数据库只能进行不完全恢复了.  
3.在打开数据库时得使用resetlogs打开。

RMAN> recover database until scn 2556538
2> ;

Starting recover at 03-AUG-22
using channel ORA_DISK_1

starting media recovery
media recovery complete, elapsed time: 00:00:00

Finished recover at 03-AUG-22

RMAN>

RMAN> alter database open resetlogs;
    database opened







欢迎光临 重庆思庄Oracle、Redhat认证学习论坛 (http://bbs.cqsztech.com/) Powered by Discuz! X3.2