开发者社区> miles_wong> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

innoDB的MVCC实现方式

简介: innodb的MVCC是通过在每行记录后面保存两个隐藏的列来实现。一个保存行的创建时间,一个保存行的过期时间,存储的值为系统版本号。每开启一个新的事务,系统版本号都会自动增加。
+关注继续查看

innodb的MVCC是通过在每行记录后面保存两个隐藏的列来实现。一个保存行的创建时间,一个保存行的过期时间,存储的值为系统版本号。每开启一个新的事务,系统版本号都会自动增加。在repeatable read隔离级别下,MVCC的具体操作:

  • select

    • innodb会根据以下两个条件检查每行记录:
      • innodb只查找版本早于当前事务版本的数据行。
      • 行删除版本要么未定义,要么大于当前事务版本号
  • insert

    • innodb为新插入的每一行保存当前系统版本号作为行版本号
  • delete

    • innodb为删除每一行保存当前系统版本号作为行删除标识
  • update

    • innodb为插入一行新纪录,保存当前系统版本号为行版本号,同时保存当前系统版本号为原来行删除标识

保存这两个额外系统版本号,使大多数读操作都可以不用加锁。但是会增加额外的存储空间,需要做更多的行检查和额外的维护工作

MVCC只在repeatable read和read committed两个隔离级别工作。read uncommitted总是读取最新数据。serializable则会对所有读取的行都加锁

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
MySQL 中 MyISAM vs. InnoDB
 MyISAM 是 MySQL 的默认数据库引擎(5.5 版本之前),由早期的 ISAM 改良而来,虽然性能极佳,但却有一个致命缺点:不支持事务处理(transaction),后来 MySQL 导入 InnoDB 以强化参照完整性与并发违规处理机制,后来就逐渐取代 MyISAM 成为 MySQL 的默认数据库引擎,现在最新版本的 MyISAM 也支持事务处理。
16 0
MySQL主从不一致发现的细小问题分析(r12笔记第63天)
   今天和同事一起看了一个问题,她在一个主从环境中发现了数据不一致,存在主键冲突。     show slave status的报错信息大概是下面的样子。
1259 0
python py_innodb_page_info.py -v /usr/local/var/mysql/ibdata1
mylib.py #encoding=utf-8 import os import include from include import * TABLESPACE_NAME='D:\\mysql_data\\test\\t.
675 0
关于ORACLE 和MYSQL INNODB 触发脏数据写的机制对比
首先要说明在ORACLE和INNODB触发checkpoint方面都采用LRU进行管理,并且都有全量检查点和增量检查点一说 在MYSQL中全量检查点叫做sharp checkpoint,增量检查点叫做FUZZY CHECKPOINT, 在ORACLE中更...
1388 0
ios中创建可以拖动的view原理和实现详解(含代码)
有时候我们会需要在界面上拖动view;uiview是继承于uiresponder的,所以可以响应触摸相关的事件。 重点是以下一组方法: - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)e...
973 0
记一场Miss A韩国美女组合+3D不闪枪战盛典
      看完3D电影阿凡达以后,想必大多数人都会被那精彩的3D画面所折服吧?那么,现在请想象一下用电视机玩3D版的穿越火线是什么感觉?最近LG联合韩国知名组合Miss A在南京师范大学举行了一场不闪式3D穿越火线之旅,让同学和玩家们感受到了一把LG不闪式3D带来的震撼。
1118 0
+关注
miles_wong
Java核心技术 数据存储与数据库 分布式系统与计算 系统研发与运维 编程语言
87
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载