定义:
所谓都版本并发控制,就是在数据表的每一行上面增加两个隐藏字段,一个数据插入时的版本号,一个是数据删除时的版本号,这样给数据刚增加版本的控制,就成为数据库的多版本并发控制。
意义:
多版本并发控制的意义在于,可以实现数据库的非阻塞读取,同时解决数据库脏读和不可重复读取的问题。
多版本并发控制下CRUD:
系统版本号:数据库每开启一个事务,系统版本号就加1;
事务版本号:事务开启时的系统版本号;
select:查询数据行的新增版本号小于等于当前事务版本号,同时,数据行的删除版本号要大于当前事务或为空。
update:检索到指定的行,将该行的删除版本号改为事务的版本号,同时新增加一行,该行的数据为修改后的数据,数据的新增版本号为当前事务的版本号,删除版本号设为空。
create:增加一行,数据的新增版本号为当前事务的版本号,删除版本号设为空。
delete:检索该行,将该行的数据删除版本设置为当前事务版本号。
多版本并发控制
最新推荐文章于 2024-07-17 07:22:55 发布