MySQL事务隔离级别
2021-12-10 18:19:48 29 举报
AI智能生成
MySQL事务隔离级别
作者其他创作
大纲/内容
行锁
独占锁 X<br>显式加锁for update
共享锁 S<br>显式加锁lock in share mode
表锁
独占锁<br>lock tables tableName write
意向独占锁(事务自动)
共享锁<br>lock tables tableName read
意向共享锁(事务自动)<br>
元数据锁(Metadata Locks)<br>DDL语句且与其他锁互斥
SQL标准事务4种隔离级别
<span style="font-size: inherit;">read uncommitted(RU)<br></span>读未提交
read committed(RC)<br>读已提交
repeatable read(RR)<br>可重复读
serializable<br>串行化
MySQL事务隔离级别
支持标准的4种隔离级别<br>默认隔离级别为RR<br>但不会发生脏写、脏读、不可重复读和幻读MVCC多版本并发控制机制<br>multi-version concurrent control
undo log多版本链条(快照)
ReadView<br>RC级别下事务的每次重新生成ReadView
Spring@Transactional(isolation=Isolation.Defalut)<br>即数据库默认支持的隔离级别<br>与Spring7种事务传播属性(propagation)不是一回事<br>
Isolation.Defalut
Isolation.READ_UNCOMMITTED
Isolation.READ_COMMITTED
Isolation.REPEATABLE_READ
Isolation.SERIALIZABLE
0 条评论
下一页