news 2026/3/26 19:32:01

行锁真的解决了可重复读下的幻读问题吗?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
行锁真的解决了可重复读下的幻读问题吗?

关于 RR 级别下的幻读,其实大部分场景都被 MVCC 和 Next-Key Lock 解决了。但在一种特殊情况下,幻读依然存在。

首先要知道只快照读的话只靠MVCC就能防止快读。涉及到当前读加锁就能避免,但是下面这种情况是先快照读,再当前读导致出现的问题。

举个例子: 假设事务 A 开启后,执行了一次 SELECT,生成了快照(Read View)。此时表里只有 id=1。 紧接着,事务 B 插入了一条 id=2 并提交了。 按理说,事务 A 是看不见 id=2 的。 但是,如果事务 A 执行了一句 UPDATE … WHERE id=2,它竟然更新成功了! 更诡异的是,更新完之后,事务 A 再执行 SELECT,就能看见 id=2 了。

这就是典型的当前读打破了快照读的现象。也不是所有的当前读都会这样,主要是UPDATE,或者INSERT导致的唯一键冲突更新,update了后会导致mysql隐藏的行属性里的上一次修改这行的事务id改变为事务A根据MVCC可见性算法就会看到id=2了。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/24 12:38:24

【SLAM】嵌入式系统硬件存储及其架构设计

IPM、MSS(OCM)、DTCM-DSP0的含义与实现,需结合嵌入式系统硬件的存储架构(需要研究参数定义,存储类项包含容量、延迟): 1. IPM(Interior Processing Memory):内…

作者头像 李华
网站建设 2026/3/15 10:41:38

管理权限累到手抽筋,智慧园区多租户管理方案高效管理

在大型园区中,除了建设方自用空间,往往会将多余空间出租给其他企业,同一空间不同组织的复杂业态让管理复杂程度呈指数级增长。权责不清、数据不通、成本不降等问题,正不断消耗着园区管理方的精力,也影响着租户的体验感…

作者头像 李华
网站建设 2026/3/21 5:48:21

基于单片机的室内空气质量监控系统设计

2系统硬件设计 2.1 单片机的选择与设计 为了实现课题要求,需要选择一款最适合的单片机来作为主控制器。因为本设计中涉及到温湿度采集模块、甲醛采集模块、显示模块、按键模块、报警模块、加湿及风扇模块。其中,温湿度采集、甲醛采集和按键是输入&#x…

作者头像 李华
网站建设 2026/3/15 5:34:53

助力航空精密制造:Tube Qualify在管路在线检测与弯曲分析中的应用

航空管路系统(燃油、液压、气动)的复杂管路,往往带有法兰、接头等部件,具有数量多、形状多样、结构复杂等特点,是航空装备的关键部件之一。为保证设备的平稳运行,在装配时,对管路的尺寸精度要求…

作者头像 李华
网站建设 2026/3/15 18:00:26

一篇文章讲透网络协议知识体系:从TCP/IP、HTTP到NoSQL的协议栈全景

面试常用知识点总结 1. HTTP协议 HTTP请求和响应的组成部分 常见的HTTP方法及其用途 常见的HTTP状态码及其含义 HTTP/1.1和HTTP/2的主要区别 无状态协议的含义及其影响 2. TCP/IP协议栈 TCP/IP协议栈的四层结构及其功能 各层常见协议及其特点 TCP和UDP的区别 TCP三次握手和四次…

作者头像 李华
网站建设 2026/3/16 0:18:35

网络协议硬核解析:应对HTTP/TCP/UDP及NoSQL的灵魂拷问与设计原理

面试常用知识点总结 1. HTTP协议 HTTP请求和响应的组成部分 常见的HTTP方法及其用途 常见的HTTP状态码及其含义 HTTP/1.1和HTTP/2的主要区别 无状态协议的含义及其影响 2. TCP/IP协议栈 TCP/IP协议栈的四层结构及其功能 各层常见协议及其特点 TCP和UDP的区别 TCP三次握手和四次…

作者头像 李华