mysql数据库索引面试题 mysql组合索引底层原理( 五 )
MVCC(Multi-Version Concurrency Control)是多版本并发控制,是在多个事务情况下可以保证每个事物之间相互隔离,MVCC机制适用于读已提交和可重复读这两个事务隔离级别 。
MVCC机制中有最重要的两部分:
undo日志版本链:在一行数据被多个事务依次修改过后,每次的修改记录都会保存到undo日志版本链中,用于回滚操作 。
一致性视图:read-view:每一个事务开启后,执行任何查询sql时就会生成当前事务的一致性视图 。这个视图是由查询的时候所有未提交的事务id数组和已创建的最大事务id组成 。
总结:MySQL通过是可重复读的,所以当一个事务执行第一个查询语句的时候就生成了一个一致性视图,当第二个事务修改了这条数据够,第一个事务查询的还是原来的数据,因为第一个事务当时查询的时候生成了一致性视图,这个一致性视图对于第一个事务来说没有变化,所以查询出来的数据也没有变化 。
面试官:小伙子真厉害啊,我这边没有什么要问的了,你还有什么问题要问(面试官两眼放光)
我:额 。。。面试官这个我的纸质简历可以给我吗,可以不往我的简历上写写画画吗,我明天的面试还要用 。
面试官:还面啥别的公司啊,就来我这吧,条件随便开
我:那就100k吧(此时面试官又拿起了他准备好的棍子)
面试官:你要是不来就给我推荐一下,让别人来我这面试一下
我:你先好好学习一下MySQL吧,今天幸亏只是我来了,如果是小奇的忠实读者来了,你将会被虐的很惨的 。(我转身留下了帅气的背影,而面试官落寞无神的呆呆的坐在那里,仿佛一个亿离他而去 。。。)
总结
MySQL是及基础又重要的一项技术,所以大家要收藏后认真反复的去学习,如果觉得我的文章还不错的话就点个赞吧 。
Tags:
推荐阅读
- 汉王考勤软件登录不上,提示“索引超出范围...” 汉王考勤机软件下载
- 关于使用pt-heartbeat监测MySQL主从复制延迟的方法
- 彻底搞懂时序数据库InfluxDB,在SpringBoot整合InfluxDB
- 听说你们的数据库并发 2 万就跪了?
- MySQL读写分离,写完读不到问题如何解决
- 要不要走索引?MySQL 的成本分析
- win10中mysql下载安装 mysql怎么下载
- C#如何连接SQL SERVER数据库
- 轻量美丽的搜索引擎——MeiliSearch
- Python 如何将数据存入数据库
