ITPub博客

首页 > Linux操作系统 > Linux操作系统 > RMAN-600(8201)错误的解决

RMAN-600(8201)错误的解决

原创 Linux操作系统 作者:yangtingkun 时间:2012-04-12 23:45:53 0 删除 编辑

根据错误信息的判断,找到一个不重建控制文件的解决方案。

RMAN-600(8201)错误:http://yangtingkun.net/?p=690

RMAN-600(8201)错误的重现:http://yangtingkun.net/?p=716

 

 

其实解决方法很简单,由于导致错误的原因是目前的主库做过FAILOVER,导致RESETLOGS的时间比当前控制文件中的RESETLOGS时间要大,Oracle在进行RMAN同步的时候判断不严谨,导致数据同步不完整,并最终体现在一些RMAN命令上,比如SHOW ALLBACKUP等。

这个问题只影响10.2.0.3及以下版本,因此升级是可以解决问题的。

此外,由于导致问题的根源在于控制文件中的ORPHAN记录,因此手工重建控制文件也是确实可行的方案。

其实除了这些方法外,还有一个办法。就是利用备库或之前备份的控制文件来创建CATALOG。由于只是当前的主库经历过FAILOVER,也就是RESETLOGS的操作,而原来的主库也就是现在的备库并没有经历这个操作,因此用之前的主库也就是目前的备库的控制文件来注册CATALOG就可以屏蔽这个错误。

测试将备库SWITCHOVER为主库,然后通过REGISTER DATABASE命令,可以顺利的进行CATALOG的同步。再次执行SWITCHOVER,切换当前主库为问题主库,这时通过问题主库连接刚才同步后的CATALOG,此时运行SHOW ALLBACKUP命令都不会再出现错误。

这种方法可以临时的解决这个问题,但是一旦需要对问题主库执行完全同步,则问题可能会重现。

除了使用STANDBY控制文件外,如果可以找到数据库FAILOVER之前的备份控制文件,采用类似的方法,同样可以解决这个问题。

 

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

请登录后发表评论 登录
全部评论
暂无介绍

注册时间:2007-12-29

  • 博文量
    1955
  • 访问量
    10352741