mysql8.0.23的可重复读(repeatable-read中不会出现幻读的情况)
1、脏读:A事务读取了B事务更新的数据(B未提交),然后B回滚操作,那么A读取到的数据是脏数据
2、不可重复读:A事务多次读取同一数据,B事务在A事务多次读取的过程中对数据作了更新并提交,导致A事务读取的数据在B事务提交前后结果不一致。
3、幻读:A事务查询表只有4笔数据,并对数据做了修改,B事务在A事务修改过程中新增了一笔数据,导致A事务查询数据量多了一笔数据,这个为幻读。
重点:不可重复读和幻读区别,不可重复读侧重于修改,幻读侧重于新增或删除。解决不可重复读的问题只需锁住满足条件的行,解决幻读需要锁表