程序员唱见
MySQL事务隔离级别:揭秘InnoDB中MVCC与ReadView、Undo Log是如何解决问题的
原创
关注作者
腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
程序员唱见
社区首页
>
专栏
>
MySQL事务隔离级别:揭秘InnoDB中MVCC与ReadView、Undo Log是如何解决问题的
MySQL事务隔离级别:揭秘InnoDB中MVCC与ReadView、Undo Log是如何解决问题的
程序员唱见
关注
发布于 2025-11-13 16:00:00
发布于 2025-11-13 16:00:00
211
0
举报
概述
本文将从SQL标准的四种隔离级别出发,带领大家分析它们如何解决的这些并发问题。然后,我们将重点转向InnoDB,深入解构其MVCC的实现原理:从最底层的undolog版本链和ReadView可见性快照,到它们如何共同作用。 最后,我们将理解InnoDB在RR级别下是如何通过MVCC + GapLock的共同作用解决“幻读”这一问题的,并分析这套精密系统背后的性能代价与权衡。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系
cloudcommunity@tencent.com
删除。
mysql
事务
mvcc
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系
cloudcommunity@tencent.com
删除。
mysql
事务
mvcc
评论
登录
后参与评论
0 条评论
热度
最新
推荐阅读
目录
一、 为什么需要“隔离”?事务的ACID与四大隔离级别
二、 “不隔离”的后果:并发事务的“三宗罪”
隔离级别 vs 并发问题
三、 InnoDB的答案:MVCC (多版本并发控制)
四、 深入MVCC(一):undolog 与版本链
五、 深入MVCC(二):ReadView 与可见性算法
5.1 ReadView 结构详解
5.2 MVCC的核心:可见性判断算法
六、 undolog的“宿命”:Purge线程与长事务
七、 RC与RR的实现:ReadView的“时机”艺术
7.1 读已提交 (Read Committed, RC)
7.2 可重复读 (Repeatable Read, RR)
八、 征服“幻读”:InnoDB的“组合拳”
8.1 MVCC的“几乎”胜利(快照读)
8.2 幻读的真正“幽灵”(当前读)
8.3 终极解决方案:Next-Key Lock (间隙锁 + 行锁)
8.4 Gap Lock的“智能”与“代价”
🏁 九、 总结与权衡:RC vs RR
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档
0
0
0
推荐