MySQL 面试官问:什么是当前读与快照读?
2023-02-18 16:38:05 时间
B站搜索“乐哥聊编程“有本篇文章配套视频 https://www.bilibili.com/video/BV1f24y117Dw
快照读
我们前面讲过MVCC机制实现了快照读,普通select 查询就是快照读,快照读到数据有可能不是最新的数据,它主要是为了实现可重复读的事务隔离级别。
当前读
读取的是最新的数据版本,当我们使用UPDATE、DELETE、INSERT、SELECT … LOCK IN SHARE MODE、SELECT … FOR UPDATE 是当前读。当前读就是加了锁的增删改查语句。
面试官问:关于MVCC 有没有解决幻读的问题?
这个问题可以这么回答:在快照读的情况下,InnoDB通过MVCC机制解决了幻读现象;但是在当前读的情况下,InnoDB是无法通过MVCC解决幻读的现象,因为它每次读取的都是最新的数据。
相关文章
- MySQL 查询
- 高级异常、运算符重载
- 未来工作相关
- pycharm、sublime个性化设置
- (一)计算机组成原理——计算机组成简介
- (二)计算机组成原理——计算机的基本组成
- Python 面向对象
- Spring核心之面向切面编程AOP
- 瑞吉外卖-移动端业务开发
- 瑞吉外卖-移动端开发
- ElasticSearch 分布式集群和路由计算
- ElasticSearch 面试题
- 比Sqoop功能更加强大开源数据同步工具DataX实战
- 实时采集MySQL数据之轻量工具Maxwell实操
- 可视化编排的数据集成和分发开源框架Nifi轻松入门-上
- 秒级查询之开源分布式SQL查询引擎Presto实操-上
- 大数据下一代变革之必研究数据湖技术Hudi原理实战双管齐下-后续
- 大数据下一代变革之必研究数据湖技术Hudi原理实战双管齐下-下
- 大数据下一代变革之必研究数据湖技术Hudi原理实战双管齐下-中
- 大数据下一代变革之必研究数据湖技术Hudi原理实战双管齐下-上