`

Oracle redo日志相关(原创)

阅读更多

redo相关的视图
V$LOG    Displays the redo log file information from the control file
V$LOGFILE    Identifies redo log groups and members and member status
V$LOG_HISTORY    Contains log history information
Oracle Redo日志切换步骤:

1、从控制文件中得到下一个可用的redo日志文件信息

2、记录当前redo日志文件的最后一个scn(high scn也称next scn),关闭当前redo日志。

3、增加SCN,再次修改控制文件,将下一个redo日志的状态标记为current,判断前一个日志中重做记录包含的脏数据内容是否已经全备写到磁盘中,如果没有则 在v$log 中的status标记为ACTIVE,如果有则标记为INACTIVE。如果处于归档模式,则唤醒ARCn进程进行归档,归档状态由v$log中的ARCHIVED字段体现。注意,在归档模式下,只有当该redo file归档完毕后,这个redo file才能被reuse

4、打开新的redo组中的成员,记录当前日志序列号和第一个日志块的scn(low scn),新一轮重做记录开始。

注意,由于日志切换的是增量检查点而非完全检查点,故DBWn没有立即将内存中的脏数据写如磁盘。

如果将log_checkpoints_to_alert参数设为true则可以将检查点启动和结束的时间记录的到跟踪文件中。下面是具体信息

Tue Dec  6 13:01:03 2011
Incremental checkpoint up to RBA [0x19.34ac.0], current log tail at RBA [0x19.3a1a.0]
Tue Dec  6 13:12:53 2011
alter tablespace TEMP tablespace group ''
Tue Dec  6 13:12:53 2011
Completed: alter tablespace TEMP tablespace group ''
Tue Dec  6 13:31:04 2011
Incremental checkpoint up to RBA [0x19.3c91.0], current log tail at RBA [0x19.3d4a.0]
Tue Dec  6 14:01:09 2011
Incremental checkpoint up to RBA [0x19.3f2c.0], current log tail at RBA [0x19.4435.0]

clear logfile:清除指定的联机日志组的所有成员。在日志文件组里丢失或者损坏部分成员时,可以清除该日志文组,Oracle会自动创建丢失或损坏的成员。被清除的日志文件状态必须是inactive,如果是active或者current说明该文件中的重做记录对应的脏数据仍然在内存中,这些重做记录还不能被清楚。对应的命令如下

用CLEAR命令重建该日志文件
SQL>alter database clear logfile group 1;
如果是该日志组还没有归档,则需要用
SQL>alter database clear unarchived logfile group 1;
关于redo file的大小可以参考v$instance_recovery中的optimal_logfile_size中的建议

 

参考至:《教你成为10g OCP》韩思捷著

                http://www.cnblogs.com/sopost/archive/2010/06/28/2190105.html

本文原创,转载请注明出处、作者

如有错误,欢迎指正

邮箱:czmcj@163.com

1
1
分享到:
评论

相关推荐

    原创Oracle 物理删除数据文件恢复 危机演练

    4. **从归档日志恢复**:如果上述方法不可行,且数据库配置了归档日志模式,那么可以使用Redo日志进行恢复。通过`RECOVER DATAFILE`命令,配合归档日志和联机redo日志,重做丢失的数据。 5. **手动恢复**:在没有...

    原创实战Oracle RAC rman恢复

    5. **应用redo日志**:使用`RECOVER DATABASE`或`RECOVER TABLESPACE`命令应用未提交的重做记录,使数据库恢复到一致状态。 6. **启动实例**:在确认恢复成功后,重新启动故障实例,使其重新加入集群。 在实际操作...

    ocp 笔记 原创

    - **Redo Log Buffer**:记录数据库更改的日志,用于日志文件的更新。 - **Java Pool**(可选):存储Java代码。 - **Large Pool**(可选):用于存储大型内存结构,如备份/恢复过程中的I/O奴隶。 ### 四、Oracle...

    vc++ 应用源码包_1

    MyPhpServer(原创,有实现的主要代码) microcai-ibus-t9-输入法源码 如题,主要源码就几个,详细见代码。 MzfHips主动防御 主要在MzfHipsDlg中,程序分析进程数据、驱动数据、注册表数据从而实现主动防御。 超级...

    vc++ 应用源码包_2

    MyPhpServer(原创,有实现的主要代码) microcai-ibus-t9-输入法源码 如题,主要源码就几个,详细见代码。 MzfHips主动防御 主要在MzfHipsDlg中,程序分析进程数据、驱动数据、注册表数据从而实现主动防御。 超级...

    vc++ 应用源码包_6

    MyPhpServer(原创,有实现的主要代码) microcai-ibus-t9-输入法源码 如题,主要源码就几个,详细见代码。 MzfHips主动防御 主要在MzfHipsDlg中,程序分析进程数据、驱动数据、注册表数据从而实现主动防御。 超级...

    vc++ 应用源码包_5

    MyPhpServer(原创,有实现的主要代码) microcai-ibus-t9-输入法源码 如题,主要源码就几个,详细见代码。 MzfHips主动防御 主要在MzfHipsDlg中,程序分析进程数据、驱动数据、注册表数据从而实现主动防御。 超级...

    vc++ 应用源码包_3

    MyPhpServer(原创,有实现的主要代码) microcai-ibus-t9-输入法源码 如题,主要源码就几个,详细见代码。 MzfHips主动防御 主要在MzfHipsDlg中,程序分析进程数据、驱动数据、注册表数据从而实现主动防御。 超级...

Global site tag (gtag.js) - Google Analytics