不可重复读/脏读不可能,幻读可能。innodb是通过间隙锁来解决的。 如何实现?💡 通过MVCC,同一个事务中的第一个快照读才会创建readview, 之后的快照读获取的都是同一个Read View 可重复读的隔离级别下使用了MVCC机制,select操作不会更新版本号,是快照读(历史版本) insert、update和delete会更新版本号,是当前读(当前版本) 要避免幻读可以用间隙锁在Session 下面执行update acc ount se t name =‘zhuge’ where i d> 10and id<= 20;,则其他Session没法插入这个范围内的数据