原文连接:UNUSUAL USE OF THE RMAN UNCATALOG COMMAND
原文作者:Suresh Karthikeyan
新的一年是学习新事物的最佳时机。 最近,我在RMAN 0级备份日志文件中遇到了警告消息,这篇文章描述了我如何处理。
文件内容如下:
RMAN-06207: WARNING: 1 objects could not be deleted for DISK channel(s) due RMAN-06208: to mismatched status. Use CROSSCHECK command to fix status RMAN-06210: List of Mismatched objects RMAN-06211: ========================== RMAN-06212: Object Type Filename/Handle RMAN-06213: --------------- --------------------------------------------------- RMAN-06214: Datafile Copy +RECOC1/prod/snapcf_prod.f specification does not match any backup in the repository
复制
我们在没有recovery catalog 用户的情况下进行了磁盘级备份,相关命令失败,并且出现以下错误:“delete noprompt expired backup;
” 因此,我执行了“crosscheck backup;
”和“crosscheck copy;
”,但是没有发现过期的记录。 最后,控制文件副本显示如下验证失败消息:
RMAN> crosscheck copy of controlfile; released channel: ORA_DISK_1 released channel: ORA_DISK_2 released channel: ORA_DISK_3 released channel: ORA_DISK_4 released channel: ORA_DISK_5 released channel: ORA_DISK_6 allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=5663 instance=PROD2 device type=DISK allocated channel: ORA_DISK_2 channel ORA_DISK_2: SID=6290 instance=PROD2 device type=DISK allocated channel: ORA_DISK_3 channel ORA_DISK_3: SID=6601 instance=PROD2 device type=DISK allocated channel: ORA_DISK_4 channel ORA_DISK_4: SID=6915 instance=PROD2 device type=DISK allocated channel: ORA_DISK_5 channel ORA_DISK_5: SID=325 instance=PROD2 device type=DISK allocated channel: ORA_DISK_6 channel ORA_DISK_6: SID=631 instance=PROD2 device type=DISK validation failed for control file copy control file copy file name=/backups/PROD/snapcf_prod.f RECID=60 STAMP=1025510159 Crosschecked 1 objects validation failed for control file copy control file copy file name=+RECOC1/prod/snapcf_prod.f RECID=65 STAMP=1055956089 Crosschecked 1 objects
复制
因此,我使用“force
”启动了删除命令,它被成功地执行了。 但我仍然在list命令中看到这些信息:
RMAN> delete force expired copy of controlfile; released channel: ORA_DISK_1 released channel: ORA_DISK_2 released channel: ORA_DISK_3 released channel: ORA_DISK_4 released channel: ORA_DISK_5 released channel: ORA_DISK_6 allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=5663 instance=PROD2 device type=DISK allocated channel: ORA_DISK_2 channel ORA_DISK_2: SID=6290 instance=PROD2 device type=DISK allocated channel: ORA_DISK_3 channel ORA_DISK_3: SID=6601 instance=PROD2 device type=DISK allocated channel: ORA_DISK_4 channel ORA_DISK_4: SID=6915 instance=PROD2 device type=DISK allocated channel: ORA_DISK_5 channel ORA_DISK_5: SID=325 instance=PROD2 device type=DISK allocated channel: ORA_DISK_6 channel ORA_DISK_6: SID=631 instance=PROD2 device type=DISK List of Control File Copies =========================== Key S Completion Time Ckp SCN Ckp Time ------- - --------------- ---------- --------------- 65 X 08-NOV-20 281674038070 08-NOV-20 Name: +RECOC1/prod/snapcf_prod.f Tag: TAG20201108T170807 60 X 28-NOV-19 253807915757 28-NOV-19 Name: /backups/PROD/snapcf_prod.f Tag: TAG20191128T075552 Do you really want to delete the above objects (enter YES or NO)? YES deleted control file copy control file copy file name=/backups/PROD/snapcf_prod.f RECID=60 STAMP=1025510159 Deleted 1 EXPIRED objects deleted control file copy control file copy file name=+RECOC1/prod/snapcf_prod.f RECID=65 STAMP=1055956089 Deleted 1 EXPIRED objects RMAN> list copy of controlfile; List of Control File Copies =========================== Key S Completion Time Ckp SCN Ckp Time ------- - --------------- ---------- --------------- 65 X 08-NOV-20 281674038070 08-NOV-20 Name: +RECOC1/prod/snapcf_prod.f Tag: TAG20201108T170807 60 X 28-NOV-19 253807915757 28-NOV-19 Name: /backups/PROD/snapcf_prod.f Tag: TAG20191128T075552
复制
单个删除命令失败并显示“RMAN-06159: error while looking up backup set
”,这是正常的,因为这些备份文件不再可用。令我惊讶的是,’change..uncatalog
’ 在这里有所帮助:
MAN> delete backupset 65; using channel ORA_DISK_1 using channel ORA_DISK_2 using channel ORA_DISK_3 using channel ORA_DISK_4 using channel ORA_DISK_5 using channel ORA_DISK_6 RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03002: failure of delete command at 01/02/2022 21:10:34 RMAN-20215: backup set not found RMAN-06159: error while looking up backup set RMAN> delete backupset 60; using channel ORA_DISK_1 using channel ORA_DISK_2 using channel ORA_DISK_3 using channel ORA_DISK_4 using channel ORA_DISK_5 using channel ORA_DISK_6 RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03002: failure of delete command at 01/02/2022 21:10:55 RMAN-20215: backup set not found RMAN-06159: error while looking up backup set RMAN> change controlfilecopy '/backups/PROD/snapcf_prod.f' uncatalog; uncataloged control file copy control file copy file name=/backups/PROD/snapcf_prod.f RECID=60 STAMP=1025510159 Uncataloged 1 objects RMAN> change controlfilecopy tag 'TAG20201108T170807' uncatalog; uncataloged control file copy control file copy file name=+RECOC1/prod/snapcf_prod.f RECID=65 STAMP=1055956089 Uncataloged 1 objects RMAN> crosscheck copy of controlfile; released channel: ORA_DISK_1 released channel: ORA_DISK_2 released channel: ORA_DISK_3 released channel: ORA_DISK_4 released channel: ORA_DISK_5 released channel: ORA_DISK_6 allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=638 instance=PROD2 device type=DISK allocated channel: ORA_DISK_2 channel ORA_DISK_2: SID=6290 instance=PROD2 device type=DISK allocated channel: ORA_DISK_3 channel ORA_DISK_3: SID=4726 instance=PROD2 device type=DISK allocated channel: ORA_DISK_4 channel ORA_DISK_4: SID=6286 instance=PROD2 device type=DISK allocated channel: ORA_DISK_5 channel ORA_DISK_5: SID=6606 instance=PROD2 device type=DISK allocated channel: ORA_DISK_6 channel ORA_DISK_6: SID=6915 instance=PROD2 device type=DISK specification does not match any control file copy in the repository RMAN> list copy of controlfile; specification does not match any control file copy in the repository
复制
我通常在克隆/刷新数据库时使用这个“change..uncatalog
”命令。所以,这个新的用法从句非常令人惊讶。我从这个 URL 发现了更多关于这个命令的信息:
https://docs.oracle.com/en/database/oracle/oracle-database/19/bradv/maintaining-rman-backups.html
我希望你觉得这篇文章有帮助。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。