mysql update 语句操作流程
以 下面语句为例子
UPDATE users SET name = '张三' WHERE id = 1;
UPDATE 流程与 SELECT 类似(连接器→分析器→预处理器→优化器→执行器),核心区别在于写入阶段涉及日志机制和事务保证。
UPDATE 写操作 — 日志写入与两阶段提交 (2PC)
- undo log:记录修改前的值
- 修改数据页(Buffer Pool)内存中修改,产生脏页
- redo log (PREPARE 状态) 物理日志 · 记录页级修改 · 写入并刷盘
- binlog 写入:逻辑日志 · 主从复制 · 刷盘
- redo log(COMMIT 状态):标记事务完成
- 事务提交


浙公网安备 33010602011771号