MySQL MVCC · RC与RR可见性

A/B会话、ReadView和undo版本链,可逐步插入并发操作。。

RC每次一致性读建立新视图,RR复用本事务首次一致性读的视图。BEGIN本身不一定建立快照。 锁定读与写操作读取当前记录并参与行锁竞争;它们不套用普通SELECT的旧快照。提交/回滚后释放本模型行锁。

主要特点

  • MySQL8.4 InnoDB单行模型;锁定读不是快照读,purge采取保守保留。 仅示例主键单行,不模拟范围锁、间隙锁和全部幻读边界。

如何使用MySQL MVCC · RC与RR可见性

  1. 当前是就绪画面。开始演示会按当前参数执行一次操作;回放准备过程请从头播放。
  2. 每次操作独立一轮。从头播放重播本轮,当前继续从所选步骤接着播;步骤菜单与时间轴可定位,历史菜单可回看上一轮。
  3. 方向键 ← → 可单步,空格键播放或暂停。

数据与隐私

所有计算都在你的浏览器里完成,不连接任何数据库,也不会把你输入的内容上传到任何地方。

相关工具

  • 计算机原理可视化 - 原「数据结构可视化」。36个可交互场景:数据结构、Java集合与JVM/GC/线程池、MySQL索引/MVCC/执行恢复、TCP/UDP、分布式事务;逐步字幕、慢速播放和面试讲解。

查看像素鸭AI全部在线工具

-- Session A (RR)
START TRANSACTION;
SELECT balance FROM account WHERE id=1; -- 100
-- Session B: UPDATE ... SET balance=80; COMMIT;
-- Session A: SELECT ...; -- RR:100 / RC:80

官方实现与参考

正在把工具准备好

马上就好,请稍等一下…