InnoDB的MVCC(多版本并发控制)

InnoDB存储引擎存储的每行记录后面都有两个隐形的字段,一个存储行版本号,一个存储行删除标记。

SELECT:

        InnoDB会根据两个条件查询数据:

        a.行记录的存储版本号小于或等于当前事务的版本号(保证在事务开始前创建、修改或在当前事务时创建、修改)

        b.行记录的删除标记未定义或大于当前事务的版本号

INSERT:

        InnoDB对新插入的每一行保存当前事务的版本号作为行版本号

DELETE:

        InnoDB对删除的每一行保存当前事务的版本号作为删除标记

UPDATE:

        InnoDB对更新的每一行保存当前事务版本号作为新的行版本号,并将旧的行版本号作为删除标记

你可能感兴趣的:(InnoDB的MVCC(多版本并发控制))