博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL中的锁及MVCC机制
阅读量:3926 次
发布时间:2019-05-23

本文共 371 字,大约阅读时间需要 1 分钟。

关于锁:

          InnoDB:使用行级锁

          MyISAM:使用表级锁

关于MVCC(多版本并发控制):

         MVCC的实现,通过保存数据在某个时间点的快照来实现的。这意味着一个事务无论运行多长时间,在同一个事务里能够  看到数据一致的视图。根据事务开始的时间不同,同时也意味着在同一个时刻不同事务看到的相同表里的数据可能是不同的。

InnoDB的MVCC实现,在每一行数据中额外保存两个隐藏的列:当前行创建时的版本号和删除时的版本号(可能为空,其实还有一列称为回滚指针,用于事务回滚)。这里的版本号并不是实际的时间值,而是系统版本号。每开始新的事务,系统版本号都会自动递增。事务开始时刻的系统版本号会作为事务的版本号,用来和查询每行记录的版本号进行比较。   每个事务又有自己的版本号,这样事务内执行CRUD操作时,就通过版本号的比较来达到数据版本控制的目的。

转载地址:http://uicgn.baihongyu.com/

你可能感兴趣的文章
系统安全性分析与设计
查看>>
系统可靠性分析与设计
查看>>
命算占卜的理性分析
查看>>
关系模型详解
查看>>
java 类加载器的探究
查看>>
基于eclipse的JMH测试环境准备
查看>>
测试Java同步、锁、原子类的同步性能
查看>>
测试同步、锁、原子引用的性能
查看>>
java 字节码校验
查看>>
明日歌
查看>>
java Arrays.sort的使用问题
查看>>
java 类锁和对象锁的一段代码,不解释
查看>>
安全管理器与访问权限
查看>>
Linux 安装与多重引导摘要
查看>>
Linux 首次登陆与在线求助man page 摘要
查看>>
Linux 文件权限和目录配置
查看>>
在工作时走神的闪光
查看>>
Ajax使用注意事项
查看>>
FileChannel 专讲
查看>>
使用FileChannel下载本地文件及扩展
查看>>