MySQL事务隔离级别
事务隔离级别 | 脏读 | 不可重复读 | 幻读 |
读未提交(read-uncommitted) | 是 | 是 | 是 |
不可重复读(read-committed) | 否 | 是 | 是 |
可重复读(repeatable-read) | 否 | 否 | 是 |
串行化(serializable) | 否 | 否 | 否 |
一 示例:不可重复读(read-committed)
二 示例:读未提交(read-uncommitted)
三 示例:可重复读(repeatable-read)
四 示例:串行化(serializable)(表操作只能串行,影响性能)
(同表同行数据 锁定)
(同表不同行数据 也是能读不能修改)
五 示例:更新操作锁定行记录
(同一行数据操作)
(两行数据操作)
六、spring的事务隔离级别Isolation.SERIALIZABLE
事务启用SERIALIZABLE级别后,其他session对事务锁定的表 的增删改操作都不能做。