MVCC(数据库多版本并发控制)
前面的文章说到数据库的事务问题,在innodb引擎四个隔离级别(读未提交RU;读已提交RC;可重复读RR;可串行化Serializable
)中,而MVCC只适用于RC和RR。
一、什么是MVCC
Multi-Version Concurrency Control,就是在事务执行过程中加入“版本”这个概念、MVCC的实现,通过保存数据在某个时间点的快照来实现的。
1、MVCC优缺点
MVCC在大多数情况下代替了行锁
,实现了对读的非阻塞
,读不加锁
,读写不冲突
。缺点是每行记录都需要_额外的存储空间_
,需要做更多的行维护和检查工作。