redo log

redo log

redo log所做的事情就是在重启或者宕机以后,恢复到之前的正常状态。
其中各种配置的设定也是有一定学问的。

redolog的大小设定

  • 它不能设置的太大,因为每次遍历一个大文件也是很耗费时间的
  • 同时也不能设置的很小,因为当redolog不够用的时候,就会触发checkpoint进行脏页刷新以及redolog的checkpoint刷新,重写弄出来空间

redolog的格式问题

不同于binlog有RAW,STATEMENT,MIX三种格式,redolog记录的是物理写入的情况。binlog是只在提交事务的时候才写入,而redolog有刷新时间,有满了以后就触发checkpoint。

redolog是有缓冲的

mysql里面很喜欢使用缓冲,redolog同样也配备了缓冲,每次写入不是一条一条的插入,而是先到缓冲中集合再一起写入

什么时候写入重做日志

1. 重做日志刷新

  • 每一秒master thread都会对其进行写入
  • 事务提交了
  • 重做日志满了,触发checkpoint

2. 重做日志的写入

我们知道,重做日志是先写入到重做日志缓冲里面的,然后当重做日志缓冲满了512M以后,也就是一个扇区的大小,这时候再统一插入。
一个扇区的大小一起插入,就可以保证,要么这次插入成功,要么这次插入失败,这就是所谓的原子性。

posted @   azxx  阅读(71)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示