04月07, 2022
收藏本站

谈谈MVCC

问:innodb和myisam的区别?
答:innodb支持MVCC,myisam不支持。
问:那可以回答下什么是MVCC吗?
答:Multi-Version Concurrency Control字面上意思多版本并发控制

  1. 用于对读、写的并行执行,提高数据库执行效率,在读已提交(Read -Committed)和可重复读(Repeatable-Read)隔离级别下事务对SELECT可以访问版本链中的记录。
  2. innodb聚簇索引隐藏列,事务ID(trx_id)和上个版本指针地址(roll_pointer)
  3. undo log中才记录版本链,读取的时候根据ReadView策略比对当前应访问对应的事务id记录

Comments