1、事务隔离级别的实现原理
锁+MVCC(多版本并发控制)
事务-》事务的ACID特性-》事务的隔离性-》事务要能够允许并发执行-》数据的安全性,一致性和并发的效率问题-》事务的隔离级别
串行化-》靠锁实现,通过锁给所有的事务都排个序,并发的效率就太低了,但是数据的安全性高。
未提交读-》没有做任何的并发控制,明知是错误的,造成脏读(造成错误),数据的安全性最低。优点是并发效率非常高。(多线程的竞态条件)
所以我们一般用的是下面这2个隔离级别:
- 已提交读
- 可重复读
这2个隔离级别就结合了数据的安全性,一致性,并发的效率 ,是由MVCC多版本并发控制实现的。
(MVCC是已提交读和可重复读的原理,锁是串行化的原理)