暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

日志写进程 (LGWR) +CKPT

原创 逆风飞翔 2021-11-05
681

负责管理重做日志缓冲区,方法是将重做日志缓冲区条目写入磁盘上的重做日志文件。LGWR 会写入自上次写入以来复制到缓冲区中的所有重做条目。进程LGWR在重做日志文件中记录事务;

LGWR 在以下情况下执行写操作:

1)用户进程提交事务处理时。

2)重做日志缓冲区的三分之一已满时。

3)在 DBWn 进程将经过修改的缓冲区写入磁盘(如果需要)之前 。

4)每隔 3 秒。
5) 当有1MB日志的时 候

检查点进程(CKPT)

负责更新控制文件和数据文件头的检查点信息,其中包括检查点位置,SCN号,online redo log开始恢复的位置。检查点在以下情况可能发起:

(1)在日志切换alter system switch logfile的时候。

(2)直接使用alter system checkpoint命令实现。

(3)数据库用immediate、Transaction、Normal或选项Shutdown数据库的时候。

(4)开始、结束备份表空间等(ALTER TABLESPACE BEGIN BACKUP)。

(5)将表空间或者数据文件切换为只读或者离线。

(6)DBW进程写的时候,但是此时只将检查点信息写入控制文件,而不会写到数据文件头。

(7)达到LOG_CHECKPOINT_TIMEOUT的延迟时。

(8)根据参数FAST_START_MTTR_TARGT的设置来确定。

如果当内存中产生的Dirty Buffer所需的恢复时间(estimated_mttr)到达FAST_START_MTTR_TARGET指定时间,那么检查点进程被触发。

通知DBWR进程将按检查点队列顺序将脏数据写入到数据文件,从而缩短了最后检查点位置与Redo日志间的距离,减少实例恢复所需的时间。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论