第二十二课第七章Maintaining Online Redo Log Files

第七章Maintaining Online Redo Log Files

本章目标

1、了解联机重做日志文件的目的

2、理解联机重做日志文件的结构

3、学会控制日志切换和检查点

4、联机重做日志的多路保存和维护

5、使用OMF管理联机重做日志文件

6、获取联机重做日志文件信息

联机重做日志文件特点

①记录数据的所有变化

②提供数据恢复机制

数据的所有变化首先都是存储在内存中,如果数据库突然出现问题,内存中的数据可能没有写入到磁盘中。此时联机重做日志文件提供了一种数据保护机制,每隔3秒钟会将数据变化写入到联机重做日志中。Oracle数据库所有数据写入磁盘之前会确保数据已经写入到redo log中

③以group为单位进行管理

④至少需要两组日志

Redo files结构

Online Redo Log File Groups

①online redo log file group联机重做日志组是多个相同的online redo log files的集合,不同组中的online redo log files不同

②后台进程LGWR同时向online redo log file group中的所有online redo log files写入完全相同的信息

③为了保证数据库的正常运行,Oracle server至少需要两组online redo log file groups

Online Redo Log File Members

①online redo log file group中的每个online redo log file都是一个成员

②online redo log file group中的每个online redo log file成员都有完全相同的log sequence numbers,同时每个成员大小相同

③Oracle server每次向log group中写日志时都会分配一个LSN(log sequence number),用来唯一标识每一个online redo log file

Multiplexed Redo Log Files多路复用重做日志文件

为了防止online redo log files损坏,至少需要两组完全相同的redo log,同时放置于不同的磁盘。即使不同组的redo log files放置于同一个磁盘,也要保证放置于不同的位置,这同样可以防止出现IO错误、文件崩溃等。

Redo log files多路复用,增加了数据的可靠性,但是也增加了磁盘的IO,对数据库的性能是有影响的。

Redo Files工作原理

①online redo log files是循环写入的

②一组online redo log file写满了,LGWR开始在下一组中写入

此时:发生了log Switch,引发了checkpoint,相关信息写入到控制文件中

从一组online redo log files转换到另一组online redo log files就叫做log Switch

Checkpoint就是将内存中的脏块(被修改的block)写入到磁盘中(DBWn进程)

Log Switch引发checkpoint,但发生checkpoint并不一定是log Switch

Checkpoint发生后,进程CKPT会将相关信息写入到控制文件中

LGWR进程何时写日志

①事务被提交

②每三秒写一次

③redo log buffer达到了三分之一

④redo log buffer中有超过1M字节数据变化

⑤在DBWn进程将数据库buffer cache中的脏数据写入到data files之前

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值