RMAN删除失效的备份时报错故障处理

举报
寒六先生 发表于 2021/03/12 14:51:18 2021/03/12
【摘要】 客户的数据库,之前一直是通过商用备份软件,备份到外置的磁带库内的,因为一些原因,磁带设备要淘汰,然后干脆利落地把磁带库下电搬走,并由此产生了一系列后续备份的问题。。。

背景:

  • 客户的数据库,之前一直是通过商用备份软件,备份到外置的磁带库内的,因为一些原因,磁带设备要淘汰,然后干脆利落地把磁带库下电搬走;

  • 在此之前有一台备份服务器专门备份此数据库服务器,数据备份到磁带库设备里,后来,在数据库端没有做任何动作的情况下,备份服务器被拆除,在数据库服务器上的备份客户端也被卸载;

  • 因此,RMAN无法再联系到sbt通道,也意味着list backup里的所有信息均无效;

  • 现在想把list backup的历史备份记录清除掉(delete backup),却一直报错。


问题:

  • 拆卸老磁带库简单粗暴,没有考虑历史备份的数据问题,历史备份已不可用;所以需要手动清理rman里的历史备份记录;

  • 希望以不破坏数据库的正常运行为前提,也不考虑以前的历史备份情况下,清除历史备份信息;

  • 简单来说,就是使list backup命令的结果为空即可;

--RMAN里删除历史备份信息时报错,无法删除,使用以下命令均不行:
RMAN> delete backup;
RMAN> delete backupset;
RMAN> delete noprompt backup;
RMAN> delete obsolete;
RMAN> delete noprompt obsolete;


报错信息:

-- 在执行清理操作时报错如下:
RMAN> delete obsolete;
RMAN retention policy will be applied to the command
RMAN retention policy is set to redundancy 1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of delete command at 10/23/2015 18:04:47
ORA-19554: error allocating device, device type: SBT_TAPE, device name:
ORA-27211: Failed to load Media Management Library
Additional information: 2


问题排查:

1. 因为备份已不可用,尝试crosscheck

-- 清理历史备份:
RMAN> crosscheck backup;
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of crosscheck command at 10/26/2015 09:26:45
ORA-19554: error allocating device, device type: SBT_TAPE, device name:
ORA-27211: Failed to load Media Management Library
Additional information: 2-- 清理历史归档:
RMAN> crosscheck archivelog all;
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=192 device type=DISK
validation succeeded for archived log
archived log file name=/oracle/archivelog/orcl/1_10_893527443.dbf RECID=15 STAMP=893887221
validation succeeded for archived log
archived log file name=/oracle/archivelog/orcl/1_11_893527443.dbf RECID=16 STAMP=893970058
validation succeeded for archived log
archived log file name=/oracle/archivelog/orcl/1_12_893527443.dbf RECID=17 STAMP=894034825
Crosschecked 3 objects
​
RMAN> delete backup of archivelog all;
released channel: ORA_DISK_1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of delete command at 10/26/2015 09:27:21
ORA-19554: error allocating device, device type: SBT_TAPE, device name:
ORA-27211: Failed to load Media Management Library
Additional information: 2
-- 同样报错,提示SBT_TAPE通道不可用;


2. 解决SBT_TAPE通道不可用问题

  • 因为原有通道已经不存在,所以只能再分配一个虚假的磁带通道:

allocate channel for maintenance device type sbt
parms 'SBT_LIBRARY=oracle.disksbt,ENV=(BACKUP_DIR=/tmp)';-- 然后再执行:
crosscheck backup;
delete backup;
-- 命令成功,最终结果如下:
RMAN> list backupset;
specification does not match any backup in the repository
RMAN> list backup;
specification does not match any backup in the repository


3. 重建新备份

在清理掉不可用备份之后,重建磁盘存储池,修改备份脚本,使用磁盘通道备份,过程不再赘述;


问题解决!

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。