Inondb中的checkpoint
checkpoint主要是为了解决一下问题:
1.缩短数据库的恢复时间
2.缓冲池不够用时,将脏页刷新到磁盘
3.重做日志不可用时,刷新脏页
Innodb引擎使用LSN(log sequence number)来标记日志版本。 LSN是占8个字节的数字。每个页都有LSN、重做日志也有LSN、Checkpoint也有LSN。
Innodb存储引擎内部有两种checkpoint:
1.sharp checkpoint
发生在数据库关闭时。将所有脏页刷新到磁盘。这是默认的方式,即innodb_fast_shutdown=1
mysql> show variables like 'innodb_fast_shutdown';
+----------------------+-------+
| Variable_name | Value |
+----------------------+-------+
| innodb_fast_shutdown | 1 |
+----------------------+-------+
1 row in set (0.00 sec)mysql>
2.fuzzy checkpoint
数据库运行时,使用sharp checkpoint会影响数据库的可用性。
所以运行时,使用fuzzy checkpoint进行页刷新(只刷新一部分脏页,而不是刷新所有的脏页)。
Innodb中存在以下几种情况的fuzzy checkpoint:
-master thread checkpoint:
(差不多每秒或每十秒)异步地从缓冲池的脏页列表中刷新一定比例的页到磁盘
-flush_lru_list checkpoint:
将LRU列表尾端的页移除,Innodb要保证LRU列表中有足够的可用空闲页。在5.6中通过参数innodb_lru_depth来控制LRU列表中可用页的数量,默认是1024
mysql> show variables like 'innodb_lru_scan_depth';
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| innodb_lru_scan_depth | 1024 |
+-----------------------+-------+
1 row in set (0.00 sec)mysql>
-async/sync flush checkpoint
重做日志不可用时,需要强制将一些页刷新到磁盘。
-dirty page too much checkpoint
脏页太多,强制发生的检查点
mysql> show variables like 'innodb_max_dirty_pages_pct';
+----------------------------+-------+
| Variable_name | Value |
+----------------------------+-------+
| innodb_max_dirty_pages_pct | 75 |
+----------------------------+-------+
1 row in set (0.00 sec)mysql>
脏页占75%时,强制刷新。
转载于:https://www.cnblogs.com/abclife/p/5065165.html
Inondb中的checkpoint相关推荐
- checkpoint技术mysql_认识MySQL中的Checkpoint技术
1,checkpoint产生的背景 数据库在发生增删查改操作的时候,都是先在buffer pool中完成的,为了提高事物操作的效率,buffer pool中修改之后的数据,并没有立即写入到磁盘,这有可 ...
- java 执行ssis包_在SSIS包中使用CHECKPOINT重新启动包执行
java 执行ssis包 In the article, SQL Server CHECKPOINT, Lazy Writer, Eager Writer and Dirty Pages in SQL ...
- Spark中的checkpoint机制
一.Spark Core中的checkpoint def main(args: Array[String]) {val spark = SparkSession.builder().appName(& ...
- oracle中的checkpoint,Oracle checkpoint详解
checkpoint扫盲 什么是checkpoint 在数据库系统中,写日志和写数据文件是数据库中IO消耗最大的两种操作,在这两种操作中写数据文件属于分散写,写日志文件是顺序写,因此为了保证数据库的性 ...
- oracle中的checkpoint,详解oracle checkpoint
这篇文章,源于群中几位网友的疑问,故打算写这篇文章给其释疑. 1. 何为检查点?其存在的意义? 2. 检查点的有哪些分类?检查点的结构如何?什么是checkpoint queue? 通俗的将,检查点仅 ...
- TensorFlow中查看checkpoint文件中的变量名和对应值
在加载模型时, 需要知道checkpoint中变量名称,一下代码可以查看TensorFlow中checkpoint文件中的变量名: #!/usr/bin/env python # -*- coding ...
- Postgresql杂谈 20—详解Postgresql中的Checkpoint、WAL日志和热备份恢复
本文中,我们共同学习下Postgresql的WAL日志.WAL,是Write Ahead Log的简称,翻译过来就是预写日志,或者叫做重做日志.相信大家对数据库事务的四大特性ACID(原子性.一致性. ...
- pytorch 中的 checkpoint 是干嘛的?
checkpoint 是做什么的? 模型保存.加载的方式 checkpoint 的使用 参考 模型保存.加载的方式 checkpoint 的使用 参考 https://blog.csdn.net/lx ...
- MySQL中Checkpoint技术
个人读书笔记,详情参考<MySQL技术内幕 Innodb存储引擎> 1,checkpoint产生的背景 数据库在发生增删查改操作的时候,都是先在buffer pool中完成的,为了提高事物 ...
最新文章
- 将文件名和文件修改时间批量输出至Excel中
- mysql workbench画E-R图,并根据E-R生成sql(步骤超完整)
- WPF 实现人脸检测
- html树形结构_数据结构-线性表.md
- 方言 —— 各地方言
- 优先队列及BFS应用
- 【Window】英文系统显示中文乱码
- [摩斯密码表]摩斯密码对照表
- 免费企业邮箱注册申请免费吗?哪个好用
- wifi连接一段时间才能上网_Win7系统下连接wifi一段时间就自动断线怎么办【图文】...
- ISO认证包括哪些?
- IDEA如何创建XML文件并用浏览器打开
- 一文读懂5G R16标准究竟讲了些什么
- Windows窗口消息介绍
- QtApplets-MyHook
- 婚车租赁APP开发源码部署
- DIV+CSS 网页兼容性问题(IE6 IE7 IE8 IE9 火狐 chorm)
- 动态规划题目汇总(持续更新)
- Symbian 模拟器在Vista Win7下无法正常启动
- Background Matting视频抠图
热门文章
- poj 1985 Cow Marathon 【树的直径】
- yaf mysql pdo 封装_PDO 操作数据库
- 无类域间路由CIDR
- 1135 求矩形个数(宁波OJ)
- python后台架构Django教程——templates模板
- caffe:制作自己的数据集train.txt和val.txt,生成lmdb文件
- modelsim仿真ROM IP数据输出为0的解决办法
- java扫描器创建,java – 如何创建条码扫描器(Android)?
- Unity3D笔记 愤怒的小鸟四 实现Selelction界面
- 点至直线的距离和垂足点计算