MySQL InnoDB读写原理
2021-07-12 10:23:02 1 举报
对MySQL的InnoDB引擎整体读写流程进行一个汇总
作者其他创作
大纲/内容
刷盘
Body
SQL语句执行组件
Trailer
redo log block
每秒刷盘
最大最小记录数
Header
后台线程
8.调用引擎接口,将redolog 改为commit
文件尾
redolog
bin log
数据页
bin log cache
事务提交刷到磁盘
undo log
写入block的body写满一个block再写另一个
1.提交事务时刷盘2.超过Buffer容量一般时刷盘,通常在高并发情况下,redolog buffer瞬间写满3.定时任务刷盘4.MySQL关闭时刷盘
2.缓存页未找到数据,从磁盘加载数据
数据页格式
缓存页
数据页头
8.写入commit标识
3.取出数据,在执行器进行计算
4.写undo log
多个数据行
7.写binlog
文件头
InnoDB引擎
OS线程
6.写redo log,状态prepare
1.执行更新操作N+1
表空间磁盘文件
5.将计算后的值更新到缓存页
redo log buffer
数据页目录
redo log磁盘文件
0 条评论
回复 删除
下一页