MYSQL Checkpoint 优化
2020-05-06 23:12
871 查看
一、checkpoint检查点为什么产生
页操作在缓冲池完成,那么缓冲池就是为了协调CPU和磁盘速度,所以页上做了数据变更,就成了脏页,就需要从缓冲池刷新到硬盘,那怎么刷新呢。频繁肯定不行,还是很多以后再提交或者不用提交,直接影响后续恢复。
数据库都是这种策略 Write Ahead Log 事物提交时,先写重做日志,再修改页,
因此永远不刷页写日志有两个条件: 缓冲池可以缓冲所有的数据 重做日志可以无限增大 显然以上条件后续无法满足,几个T的数据库,疯狂增长的日志。
此时就需要一个完整的方案机制,去满足可行性条件,然后进行刷新。
二、checkpoint检查点解决什么
缩短数据库的恢复时间: checkpoint之前的已经刷盘,只需要恢复后边的重做日志
缓冲池不够用时,将脏页刷新到磁盘:同样缓冲池不够用的时候,也需要更新脏页到磁盘。
重做日志不可用时,刷新脏页:重做日志是组,循环使用,如果循环之前还需要用到之前的日志。
执行show engine innodb status \G;
Warnings:生产上这个checkpoint和flushed up 的pos经常不一致。
三、checkpoint检查点优化参数设置
两种类型: Sharp Checkpoint 数据库关闭时刷新所有的脏页到磁盘 Fuzzy Checkpoint 只刷新一部分脏页到磁盘,而不是全部
这个参数就是默认的工作方式。Sharp Checkpoint。
针对Fuzzy Checkpoint,以下几种情况会用到: master thread checkpoint 差不多每秒或者每十秒刷新部分脏页到磁盘,异步,不影响查询操作。 flush_lru_list checkpoint
相关文章推荐
- mysql checkpoint理解
- mysql报错InnoDB: ERROR: the age of the last checkpoint is
- Mysql监控工具mycheckpoint
- 大数据Spark“蘑菇云”项目实战第63课: 广告点击系统高可用性和性能优化 checkpoint wal driver高可用 并行度配置
- Mysql监控工具mycheckpoint
- 【转】针对enq: KO - fast object checkpoint的优化
- MySQL Checkpoint机制
- MySQL##InnoDB: ERROR: the age of the last checkpoint is 9446699
- MySQL checkpoint深入分析
- mysql性能监控工具:mycheckpoint的使用方法
- mysql结构优化--索引优化
- MySQL几点重要的性能指标计算和优化方法总结
- Linux+Apache+MySQL+PHP架设优化全攻略
- MySQL索引原理及慢查询优化
- MySQL配置文件my.cnf参数优化和中文详解
- 优化MYSQL服务器
- 【转】由浅入深探究mysql索引结构原理、性能分析与优化
- MySQL配置文件的优化
- MySQL-配置优化技巧
- mysql_建立索引的优缺点&性能优化