ITPub博客

首页 > Linux操作系统 > Linux操作系统 > control_file_record_keep_time对备份策略的影响

control_file_record_keep_time对备份策略的影响

原创 Linux操作系统 作者:windtalker_cs 时间:2012-01-06 17:19:57 0 删除 编辑

年初在RAC环境上做了一备份策略,window of 7 days。

周日0级备份

周一、二、四、五、六2级备份。

周三1级备份。

运行一直良好,list backup;可以看到两个0级备份。

所以十月份的时候,另一个单实例环境也要做备份策略,就想都没有想把这个策略给放上去了。

结果发现,一个月后空间就不够了。经检查发现,竟然保存了4周的备份。旧的备份没有删除,但是list backup;却又看不到两周以前的旧备份,RMAN看不到自然也就不会删除了。那为什么RAC环境的正常呢?难道两个环境的控制文件保存的备份记录时间不一样,单实例环境保存的时间短?旧的备份信息被覆盖,RMAN看不到就没有删除?但是经检查两个环境的control_file_record_keey_time都是一样的为7。这就奇怪了。

     但是从LIST BACKUP;看不到结果,而备份文件又确实存在,基本可以推断控制文件中的信息被覆盖了。于是用以下查询控制文件中有关备份的信息:

select TYPE,RECORDS_TOTAL,RECORDS_USED from v$controlfile_record_section;

RAC:

BACKUP SET     1227 1227
BACKUP PIECE 1000 1000

单实例:

            

BACKUP SET    409 409
BACKUP PIECE 200 200

这就更让我怀疑是备份信息被覆盖了。但是这还是需要证实,所以现在确定这样的思路:1、如果真的是覆盖,那么下一次备份,就会覆盖一些信息,所以现在记录下来list backup;的信息,到下一次备份后对比一下结果。

            2、如果真的是备份信息被覆盖了,那解决的方法也很简单,根据控制文件分配空间不回收的特点,在备份周期内多做几次备份,将控制文件中保存备份信息的空间“扩大”,不过,这还是个初步想法,正在实验。

 

另外:

通过对备份日志的观察发现,20120101会删除掉20111225的0级备份的一个备份片。一开始对此很不理解,后来看了下日志,发出这个备份片生成只需要4S,而其它的备份片却需要十几分钟,于是就想,是不是这部分信息对于恢复到7天前已经不需要了。那这样也就很合理了:ORACLE会根据备份策略尽量删除不需要的备份文件。

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23065269/viewspace-714550/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2010-02-24

  • 博文量
    49
  • 访问量
    184835