概述
MVCC解决读的隔离性,加锁解决写的隔离性。
读未提交
读未提交,更新数据大概率使用的是独享锁吧。
读已提交
在 Read Committed(读已提交)隔离级别下,每次执行读操作时都会生成一个新的 read view。这是因为在读已提交隔离级别下,每次读取操作都应该反映出其他事务已经提交的变更,因此需要生成新的 read view 来确保事务能够看到最新的已提交版本。
而在 Repeatable Read(可重复读)隔离级别下,事务只在启动时生成一个 read view,之后所有的读取操作都使用同一个 read view。这是因为可重复读隔离级别要求事务能够看到一个一致性的数据快照,而不受其他事务的影响。
可重复读
用临键锁解决了部分幻读
串行读
读已提交每次都会生成一个readview,可重复读只会生成一个readview。