We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 8dfec2c commit 2362899Copy full SHA for 2362899
DB.md
@@ -2919,7 +2919,9 @@ RC、RR 级别下的 InnoDB 快照读区别
2919
2920
解决幻读问题:
2921
2922
-- 快照读:通过 MVCC 来进行控制的,在可重复读隔离级别下,普通查询是快照读,是不会看到别的事务插入的数据的,幻读只在当前读下才会出现
+- 快照读:通过 MVCC 来进行控制的,在可重复读隔离级别下,普通查询是快照读,是不会看到别的事务插入的数据的,但是**并不能完全避免幻读**
2923
+
2924
+ 场景:RR 级别,T1 事务开启,创建 Read View,此时 T2 去 INSERT 新的一行然后提交,然后 T1去 UPDATE 该行会发现更新成功,因为 Read View 并不能阻止事务去更新数据,并且把这条新纪录的 trx_id 给变为当前的事务 id,对当前事务就是可见的了
2925
- 当前读:通过 next-key 锁(行锁 + 间隙锁)来解决问题
2926
2927
0 commit comments