mysql执行update语句流程

  1. 客户端发送更新命令到MySQL服务器,经过处理连接、解析优化等步骤;
  2. Server层向InnoDB存储引擎要id=1的这条记录;
  3. 存储引擎先从bufferpoll中查找这条记录,有的话直接返回,没有则从磁盘加载到bufferpoll中然后返回;
  4. Server层执行器修改这条记录的name字段值;
  5. 存储引擎更新修改到内存中;
  6. 存储引擎记录redo日志,并将状态设置为prepare状态;
  7. 存储引擎通知执行器,修改完毕,可以进行事务提交;
  8. Server先写了个binlog;
  9. Server提交事务;
  10. 存储引擎将redo日志中和当前事务相关的记录状态设置为commit状态。
posted @ 2024-05-05 16:06  沙漠里的小鱼  阅读(42)  评论(0编辑  收藏  举报