ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 有关redo log的状态以及故障处理方法

有关redo log的状态以及故障处理方法

原创 Linux操作系统 作者:great_li 时间:2010-06-01 23:11:50 0 删除 编辑

Redo 日志组的状态:

Current:目前正在写的日志组;

Active:目前不在写,但是还未进行ckpt,即cache中脏数据未写入datafile,恢复时需要用到此日志组;

Inactive:目前不在写,已进行ckpt,实例恢复不需要此日志组。

 

由于每3秒进行的检查点并不是完全检查点,并不保证脏数据完全写入datafile,所以做实验可以看到,手工执行alter system switch logfile后,原来current的日志处于active状态,说明对应的脏数据没有写完成,要经过N多个三秒后,状态会变成inactive。

 

丢失的恢复方法:查询v$log视图,查看日志状态,对于inactive的日志,直接alter database clear logfile。即可,因为这种日志已经完成了datafile的写,不需要恢复。

 

而丢失active和current日志组,都是比较麻烦的,必然会有数据丢失,如果有备份还好,recover database unitl cancel或scn都可以。如果没有备份,则需要隐含参数强制打开数据库,并导出文件,风险较大。

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

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

注册时间:2010-03-27

  • 博文量
    59
  • 访问量
    85698