刚做的备份,例行检查中发现存在
RMAN-06207: WARNING: 3 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: Backup Piece /u01/databack/arch_01rfmp2d_922444877.rac
RMAN-06214: Backup Piece /u01/databack/arch_02rfmp2v_922444895.ctl
RMAN-06214: Backup Piece /u01/databack/DB0_06rfo2vr_6_1.data
按网上说的开始做
1,crosscheck backup;
2,delete obsolete;
然并卵。。。。。。
没有查到错误中提示的文件,备份是13号做的,几天都22号了,肯定已经过期了
后来看到一篇文章,忽然想到这几个文件是当时手动执行的,而且还更换过目录,
现在crosscheck查不到这几个文件,把文件拷贝到原目录,发现有的可以查到信息,有的还是查不到,
将它们重新注册到控制文件,
catalog backuppiece '/u01/databack/arch_02rfmp2v_922444895.ctl';
都可以查到信息,然后把它们手动删除
再次执行
1,crosscheck backup;--已成为expired状态
2,delete expired backup;--成功删除
总结,1,手动执行备份导致后续的七天策略没有生效;2,转移目录导致文件crosscheck不到;3,查不到文件可以使用重新注册
4,只有当文件被删除才会显示EXPIRED状态;5,obsolete 是保留策略,即使文件过期还是会显示available状态