当前位置:   article > 正文

隔离级别(未提交读、提交读、可重复读、可串行化)、多版本并发控制、Next-Key Locks(Record Locks、Gap Locks)

未提交读

1. 隔离级别

1.1 未提交读(READ UNCOMMITTED)

事务中的修改,即使没有提交,对其它事务也是可见的。

1.2 提交读(READ COMMITTED)

一个事务只能读取已经提交的事务所做的修改。换句话说,一个事务所做的修改在提交之前对其它事务是不可见的。

1.3 可重复读(REPEATABLE READ)

保证在同一个事务中多次读取同样数据的结果是一样的。

1.4 可串行化(SERIALIZABLE)

强制事务串行执行。

隔离级别 脏读 不可重复读 幻影读
未提交读
提交读 ×
可重复读 × ×
可串行化 × × ×


2. 多版本并发控制

多版本并发控制(Multi-Version Concurrency Control, MVCC) 是 MySQL 的InnoDB 存储引擎实现隔离级别的一种具体方式,用于实现提交读和可重复读这两种隔离级别。

而未提交读隔离级别总是读取最新的数据行,无需使用 MVCC。

可串行化隔离级别需要对所有读取的行都加锁,单纯使用 MVCC 无法实现。

2.1 版

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/239560
推荐阅读
相关标签
  

闽ICP备14008679号