InnoDB存储引擎体系结构中的各个组件如何协同工作

彭维盛

关注

阅读 92

2022-07-12

内存结构

Buffer Pool

缓存区 利用页面链表的方式+LRU 最近最少使用进行管理

Change Buffer

用于处理数据操作修改了索引结构的语句
在下次需要用到索引的操作执行时 就将该缓存的内容与原缓存合并

Adaptive Hash Index

用户优化缓冲区内存

Log Buffer(Redo Log Buffer)

保存写入磁盘的数据

从一个Update 语句入手

  1. 解析语法 查询什么表 什么字段 生成查找树 选择最优的查找路径
  2. 判断操作记录是否在缓存池如果在 就直接操作 如果不在就将该记录放入缓存 并加锁
  3. 将之前修改之间的记录写入回滚字段 可以理解为放入回收站 要是搞错了 还可以拿出来那种
  4. 更新缓存中的数据 记录日志
  5. 提交事务
  6. 后台IO 选择合适的时机 把脏页的数据刷新到各个数据文件中

参考内容

​​https://weread.qq.com/web/reader/4aa3250071a74c1d4aacadek8e232ec02198e296a067180​​


精彩评论(0)

0 0 举报