multi-version concurrency control 多版本并发控制,mvcc 是一种并发控制的方法,一般在数据库管理系统中,实现对数据库的并发访问;在编程语言中实现事务内存。
1.没有一个统一的实现标准,实现了非阻塞的读操作,写操作也只锁定必要的行
2.通过保存数据在某个时间点的快照实现的
3.典型的有乐观并发控制和悲观并发控制
4.innodb的mvcc是每次事务都有递增的版本号,通过在每行记录的后面添加两列隐藏字段,两列分别是是创建版本号和删除版本号,存储操作它事务的版本号
5.在事务中增删改查就是对两列版本号字段进行操作
insert 为新插入的每一行保存当前事务版本号到 行创建版本号字段
update 插入一行新的保存当前事务创建版本号,修改原行数据的删除版本号为本次事务的版本号
delete 修改行的删除版本号字段为本次事务的版本号
select 查询 创建版本号字段 小于等于当前事务版本的数据 确保该记录是本次之前就存在的或本次事务新插的
查询 删除版本号字段 不存在或者大于当前版本的数据 确保该记录在本次事务之前没删除
6.这样的设计就不需要加锁了,读和操作性能好,但是需要额外的存储空间
7.mvcc只在REPEATABLE READ和READ COMMITED两个隔离下工作;READ UNCOMMITED总是读取最新数据;SERIALIZABLE对读取的行都加锁
Modoer多功能点评系统2.5 精华版 Build 20110710 GBK
Modoer 是一款以本地分享,多功能的点评网站管理系统。采用 PHP+MYSQL 开发设计,开放全部源代码。因具有非凡的访问速度和卓越的负载能力而深受国内外朋友的喜爱,不局限于商铺类点评,真正实现了多类型的点评,可以让您的网站点评任何事与物,同时增加产品模块,也更好的网站产品在网站上展示。Modoer点评系统 2.5 Build 20110710更新列表1.同步 旗舰版系统框架2.增加 限制图片
0 查看详情
【推荐课程:mysql视频教程】
以上就是[MySQL] MVCC多版本并发控制实现的事务的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1079616.html
微信扫一扫
支付宝扫一扫