MySQL脏读、不可重复读、幻读
查询where=3,会用nexy-key-lock锁住(1,3],然后用Gap-lock锁住(3,6)【注释:这里辅助索引是离散的,nexy-key-lock锁住的范围也不包含 1 和 6,但是包含1到6之间的范围】脏读是读取另一个事务中未提交的数据,比如在事务B中执行update但是还没有commit,事务A可以读取这个数据并使用,即使事务B进行了数据回滚,A仍然使用这个脏数据。不可重复读与脏读的区别是:脏读读到的是未提交的数据,而不可重复读读到的却是已经提交的数据,但是其违反了数据库事务一致性的要求。
原创
2023-01-04 17:45:25 ·
177 阅读 ·
0 评论