问 题:为什么会出现specification does not match any archive log in the recovery catalog;
备份脚本:
run{
...
backup archivelog all delete all input;
backup current controlfile;
crosscheck backup;
crosscheck archivelog all;
delete noprompt expired backup;
delete noprompt obsolete;
delete noprompt expired archivelog all;
}
备份策略
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
产生specification does not match any archive log in the recovery catalog的原因是由于rman没有找到expired(过期)的备份。
有人开始质疑,我的备份集里面明明有7天前的备份,为什么rman告诉我们没有找到expired(过期)的备份呢?
来解释一下什么是“expired”、“expired”和“obsolete”的区别,大家就都明白了
expired是由于当你crosscheck备份的时候,物理文件存在,则在控制文件中把备份的状态标记为“AVAILABLE”;物理文件不存在,则标记为“EXPIRED”。这个时候你要是
delete noprompt expired backup;
这样就会把控制文件中状态记录为“EXPIRED”的备份删除掉。而
delete noprompt obsolete;
的功能才是删除7天前的数据。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25517773/viewspace-730321/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/25517773/viewspace-730321/