InnoDB如何解决幻读
-
Mysql有四种事务隔离级别,这四种隔离级别代表当存在多个事务并发冲突时,可能出现的脏读、不可重复读、幻读的问题。
其中InnoDB在RR的隔离级别下,解决了幻读的问题。
那么, 什么是幻读呢?幻读是指在同一个事务中,前后两次查询相同的范围时,得到的结果不一致
第一个事务里面我们执行了一个范围查询,这个时候满足条件的数据只有一条。第二个事务里面,它插入了一行数据,并且提交了。接着第一个事务再去查询的时候,得到的结果比第一次查询的结果多出来了一条数据。所以,幻读会带来数据一致性问题。
nnoDB如何解决幻读的问题?InnoDB引入了间隙锁和next-key Lock机制来解决幻读问题,为了更清晰的说明这两种锁。
西南地区IT社群(QQ)
- 云南
- 【昆明网页设计交流吧】243627302
- 【昆明nodejs交流吧】 243626749
- 【VUE】838405306
- 【云南程序员总群】343606807
- 【昆明UI设计】104031254
- 【云南软件外包】15547313
- 贵州
- 【PHP/java源码/站长交流群】55692114
- 四川
- 【成都Java/JavaWeb交流】86669225
- 【vaScript+PHP+MySql】116270060
- 【UI设计/设计交流学习群】135794928
- 重庆
- 【诺基亚 JAVA游戏博物馆】 559479780
- 【PHP,Java,Python,C++接单】 442103442
- 西藏