mysql笔记-checkpoint
程序员文章站
2022-07-06 10:53:13
1. 为何需要checkpoint? 为了协调cpu与磁盘速度的差距,mysql内部设计了缓冲池。页的的操作首先会在缓冲池中完成。然后按照一定机制刷新新版本的页到磁盘。 但是在数据刷新到磁盘前可能宕机等导致数据丢失,会在事务提交时 先写重做日志再修改页保证了事务的持久性。用checkpoint可以解决重做日志过大,导致数据库恢复时间过长 具体参考checkpoint。2. 发生checkpoint时机 a. Master Thread 中的Checkpoint,大约以几秒或者每10......
1. 为何需要checkpoint?
为了协调cpu与磁盘速度的差距,mysql内部设计了缓冲池。页的的操作首先会在缓冲池中完成。然后按照一定机制刷新新版本的页到磁盘。 但是在数据刷新到磁盘前可能宕机等导致数据丢失,会在事务提交时 先写重做日志再修改页保证了事务的持久性。用checkpoint可以解决重做日志过大,导致数据库恢复时间过长 具体参考 checkpoint。
2. 发生checkpoint时机
a. Master Thread 中的Checkpoint,大约以几秒或者每10秒的速度
从缓冲池的脏页列表中刷新一定比例的页回磁盘,过程是异步的
b. InnoDB要保证LRU列表中有足够的空白页,当没有足够的页,会从尾部移除一些页,如果
有脏页,则进行checkpoint.
c. 重做日志不可用
本文地址:https://blog.csdn.net/qq_22323251/article/details/107321212
上一篇: 数据查询(上)