MVCC : 多版本并发控制
    功能: 通过UNDO生成多版本的”快照“。非锁定读取。
    乐观锁: 乐观。
    悲观锁: 悲观。
    每个事务操作都要经历两个阶段:
    1. MVCC采用乐观锁机制,实现非锁定读取。
    2. 在RC级别下,事务中可以立即读取到其他事务commit过的readview
    3. 在RR级别下,事务中从第一次查询开始,生成一个一致性readview,直到事务结束。
    创建ReadView
    – 获取kernel_mutex
    • 遍历trx_sys的trx_list链表,获取所有活跃事务,创建ReadView
    – Read Committed
    • 语句开始,创建ReadView
    – Repeatable Read
    • 事务开始,创建ReadView
    image.png