暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

【译】非正常的使用RMAN UNCATALOG 命令

原创 smiling 2022-06-08
928

原文连接: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进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论