EXPIRED和OBSOLETE的区别

常常混淆RMAN中EXPIRED和OBSOLETE两个状态,其实如果理解了两者是如何产生的,区别也就出来了。

对于EXPIRED状态的产生,与crosscheck命令是密切相关的,RMAN通过crosscheck命令检查备份是否存在于备份介质上,如果不存在,则状态由AVAILABLE改为EXPIRED。
例如这里将控制文件的备份删除,再使用crosscheck进行检查,该备份的状态由AVAILABLE改为EXPIRED:

RMAN> list backup of controlfile;
 
 
备份集列表
===================
 
BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
246     Full    6.77M      DISK        00:00:01     17-8月 -09
        BP 关键字: 248   状态: AVAILABLE  已压缩: NO  标记: CONTROLFILE_BACKUP
段名:D:/RMAN_BACKUP/CF_ORCL_20090817_5_1
  包括的控制文件: Ckp SCN: 1321122      Ckp 时间: 17-8月 -09
 
RMAN> host "del D:/RMAN_BACKUP/CF_ORCL_20090817_5_1";
 
主机命令完成
 
RMAN> list backup of controlfile;
 
 
备份集列表
===================
 
BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
246     Full    6.77M      DISK        00:00:01     17-8月 -09
        BP 关键字: 248   状态: AVAILABLE  已压缩: NO  标记: CONTROLFILE_BACKUP
段名:D:/RMAN_BACKUP/CF_ORCL_20090817_5_1
  包括的控制文件: Ckp SCN: 1321122      Ckp 时间: 17-8月 -09
 
RMAN> crosscheck backup of controlfile;
 
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=154 devtype=DISK
交叉校验备份段: 找到为 'EXPIRED'
备份段 handle=D:/RMAN_BACKUP/CF_ORCL_20090817_5_1 recid=5 stamp=695159773
已交叉检验的 1 对象
 
 
RMAN> list backup of controlfile;
 
 
备份集列表
===================
 
BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
246     Full    6.77M      DISK        00:00:01     17-8月 -09
        BP 关键字: 248   状态: EXPIRED  已压缩: NO  标记: CONTROLFILE_BACKUP
段名:D:/RMAN_BACKUP/CF_ORCL_20090817_5_1
  包括的控制文件: Ckp SCN: 1321122      Ckp 时间: 17-8月 -09

可以用delete (noprompt) expired backup of controlfile来删除catalog中expired的备份信息:

RMAN> delete expired backup of controlfile;
 
使用通道 ORA_DISK_1
 
备份段列表
BP 关键字  BS 关键字  Pc# Cp# 状态      设备类型段名称
------- ------- --- --- ----------- ----------- ----------
248     246     1   1   EXPIRED     DISK        D:/RMAN_BACKUP/CF_ORCL_20090817_5_1
 
是否确定要删除以上对象 (输入 YES 或 NO)? NO
 
RMAN> delete noprompt expired backup of controlfile;
 
使用通道 ORA_DISK_1
 
备份段列表
BP 关键字  BS 关键字  Pc# Cp# 状态      设备类型段名称
------- ------- --- --- ----------- ----------- ----------
248     246     1   1   EXPIRED     DISK        D:/RMAN_BACKUP/CF_ORCL_20090817_5_1
已删除备份段
备份段 handle=D:/RMAN_BACKUP/CF_ORCL_20090817_5_1 recid=5 stamp=695159773
1 EXPIRED 对象已删除

crosscheck还常使用于:在手工删除归档日志后,使用crosscheck进行检查,再删除expired状态的归档信息。

对于obsolete状态,是针对MAN备份保留策略来说的,超过了这个保留策略的备份,会被标记为obsolete,但其状态依旧为AVAILABLE,我们可以使用report obsolete来查看已废弃的备份。
例如这里,冗余数为1,有两个控制文件的备份,较早的一个备份,就会被标记为obsolete:

RMAN> show RETENTION POLICY;
 
RMAN 配置参数为:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
 
RMAN> list backup;
 
 
备份集列表
===================
 
BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
85      Full    6.77M      DISK        00:00:02     17-8月 -09
        BP 关键字: 87   状态: AVAILABLE  已压缩: NO  标记: CONTROLFILE_BACKUP
段名:D:/RMAN_BACKUP/CF_ORCL_20090817_3_1
  包括的控制文件: Ckp SCN: 1314053      Ckp 时间: 17-8月 -09
 
BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
112     Full    6.77M      DISK        00:00:01     17-8月 -09
        BP 关键字: 114   状态: AVAILABLE  已压缩: NO  标记: CONTROLFILE_BACKUP
段名:D:/RMAN_BACKUP/CF_ORCL_20090817_4_1
  包括的控制文件: Ckp SCN: 1314118      Ckp 时间: 17-8月 -09
 
RMAN> report obsolete;
 
RMAN 保留策略将应用于该命令
将 RMAN 保留策略设置为冗余 1
已废弃的备份和副本报表
类型                 关键字 完成时间           文件名/句柄
-------------------- ------ ------------------ --------------------
备份集               85     17-8月 -09
备份段       87     17-8月 -09         D:/RMAN_BACKUP/CF_ORCL_20090817_3_1

要真正地删除废弃的备份,可以使用delete noprompt obsolete命令(noprompt是指无需确认):

RMAN> delete noprompt obsolete;
 
RMAN 保留策略将应用于该命令
将 RMAN 保留策略设置为冗余 1
使用通道 ORA_DISK_1
删除以下已废弃的备份和副本:
类型                 关键字 完成时间           文件名/句柄
-------------------- ------ ------------------ --------------------
备份集               85     17-8月 -09
备份段       87     17-8月 -09         D:/RMAN_BACKUP/CF_ORCL_20090817_3_1
已删除备份段
备份段 handle=D:/RMAN_BACKUP/CF_ORCL_20090817_3_1 recid=3 stamp=695147926
1 对象已删除
 
 
RMAN> report obsolete;
 
RMAN 保留策略将应用于该命令
将 RMAN 保留策略设置为冗余 1
未找到已废弃的备份
 
RMAN> list backup;
 
 
备份集列表
===================
 
BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
112     Full    6.77M      DISK        00:00:01     17-8月 -09
        BP 关键字: 114   状态: AVAILABLE  已压缩: NO  标记: CONTROLFILE_BACKUP
段名:D:/RMAN_BACKUP/CF_ORCL_20090817_4_1
  包括的控制文件: Ckp SCN: 1314118      Ckp 时间: 17-8月 -09
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值