MySQL/Read View快照/MVCC/串行化

MySQL 服务端是允许多个客户端连接的,这意味着 MySQL 会出现同时处理多个事务的情况。

问题 正确定义 关键点
脏读(Dirty Read) 一个事务读取到了另一个事务未提交的数据,而另一个事务最终回滚,导致读取的数据不存在 读到了"脏数据"
不可重复读(Non-Repeatable Read) 一个事务内多次读取同一行数据,由于其他事务修改并提交,导致前后读取结果不一致 针对 UPDATE
幻读(Phantom Read) 一个事务内多次查询同一个范围的数据,由于其他事务插入或删除并提交,导致查询结果集不一致 针对 INSERT/DELETE

MySQL 解决并发问题,主要靠 事务隔离机制 + MVCC(多版本并发控制) + 锁机制 。

模拟幻读场景:

相关推荐
mldong10 小时前
引擎从不发一条消息:jeeflow 的两类扩展点与消息模块的分工
java·架构
君顾110 小时前
智慧零售实战指南:从技术架构到落地方案全解析
java·开发语言·零售
zhanghe68711 小时前
es的密码带有特殊字符,导出
java
pnoker11 小时前
IoT DC3 概念解读:把设备抽象成一套语义模板——位号、指令、事件与面向智能体的设备建模
java·人工智能·物联网·iot·dc3
my_realmy11 小时前
Java SE 基础学习笔记(一):面向对象、继承多态、抽象接口与异常(JDK 8)
java·多线程·并发··生产者消费者模式
天远数科12 小时前
风险治理实战:基于天远车信盟出险构建自动化理赔核保流水线
java·网络·人工智能·自动化
Mr.朱鹏12 小时前
Linux 服务器 LVM 根分区在线动态扩容
linux·服务器·数据库
骇客野人12 小时前
SpringBoot电商系统用户注册、登录、留存及数据埋点设计与落地实施方案
java·spring boot·后端
摇滚侠12 小时前
《SpringBoot 3:入门与应用实战》第 12 章 JDBC 与事务 数据库初始化机制 阅读笔记 36
数据库·spring boot·笔记
qiuhaipeng112 小时前
Claude code 升级后上下文长度变短问题
java·前端·数据库