首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
Lyh0
2019-08-22 15:53
已编辑
厦门大学 Java
关注
已关注
取消关注
MVCC解决幻读
请求各位大佬,MVCC为什么不能避免幻读呢?根据版本号,每次SELECT出来的数据的创建版本号不是都小于当前事务版本号,那怎么还有幻读呢?
#笔试题目#
提示
全部评论
推荐
最新
楼层
球球Offer了
西安电子科技大学 Java
你得看看快照读和当前读
7
回复
分享
发布于 2019-08-22 15:54
高木同学
阿里巴巴_供应链平台事业部_Java开发
举个例子,假设说数据库里有一张表一共有3列,第一列是自增主键,隔离级别为RR级别。 原先数据库表里有3条数据 1 1 1 2 2 2 3 3 3 ------- 此时我开启一个事务A,执行一下select * ,然后再开启一个事务B,insert一条 444并commit。 之后再回到事务A,再次执行select *,毫无疑问111222333,符合可重复读。 再然后我执行一条 sql :update 第三列 = 5 之后再select 结果为 1 1 5 2 2 5 3 3 5 4 4 5 -------- 此时发生了幻读,要解决这个问题也很简单,楼上基本说了,就不多解释了。 如有错误麻烦指出。
点赞
回复
分享
发布于 2019-08-22 16:32
crud_boy_arthur
阿里巴巴_数字供应链_开发工程师
select是非锁定读,本来就不会幻读,update这种锁定读才会出现幻读,需要使用间隙锁避免幻读
点赞
回复
分享
发布于 2019-08-22 15:59
快手无敌内推
快手_高级Java开发工程师
RR级别下每个事务会创建一个快照,RR级别默认第一条SQL才创建快照,依据快照中记录的事务的高水位和低水位判断数据是否可见,低于低水位的必然可见,高于高水位的不可见,如果介于两者之间,也处于活动中的事务id的数据不可见,由此解决的,
2
回复
分享
发布于 2019-08-22 16:03
C.A.Y.P
五邑大学 Java
mvcc是快照读,本身就解决了幻读,当前读的情况下,用间隙锁解决了幻读
点赞
回复
分享
发布于 2019-08-22 16:23
我是一只快乐的小菜鸡
字节跳动_android开发
mvcc解决的是可重复读问题,next Key lock解决幻读问题
点赞
回复
分享
发布于 2019-08-22 15:55
快手无敌内推
快手_高级Java开发工程师
谁跟你说的每次查出来的数据的版本号都小于当时事务编号的??
点赞
回复
分享
发布于 2019-08-22 15:59
RDD2DAG
中南大学 大数据开发工程师
select属于快照读操作,不会出现幻读,只有update、delete这种当前读操作才会出现幻读现象。 幻读的话,我给你举个例子,假如A事务正在查询id<10的所有数据,只存在id为1~7的数据,8、9并不存在,此时B事务向数据库插入id为8的数据,那么事务A就会出现幻读现象,本来是不存在id为8的数据的,但是像出现幻觉一样读取到了,这就是幻读。 解决的办法是加上next-key锁(也就是行锁+gap锁),gap锁会锁着id为8、9的两个位置,阻止事务A读取数据的时候,事务B向数据库插入数据,这样就避免幻读了
4
回复
分享
发布于 2019-08-22 16:31
kafkal
杭州电子科技大学
幻读是会发现多了数据或者少了数据吧
点赞
回复
分享
发布于 2019-08-22 15:49
ChessC
浙江大学 Java
不能避免幻读??
点赞
回复
分享
发布于 2019-08-22 15:51
你好像一个人
华中科技大学 前端工程师
不是默认开启了next keylock 已经避免幻读了吗
点赞
回复
分享
发布于 2019-08-22 15:52
offer来我怀里
河海大学 Java
可重复读级别下通过间隙锁,应该是能解决幻读的问题
点赞
回复
分享
发布于 2019-08-22 15:54
等offer的小男孩
家里蹲
能避免幻读吧,或者可重复读+间隙锁
点赞
回复
分享
发布于 2019-08-22 15:56
池里游啊游
北京青年政治学院 Java
因为mvcc里面的update是当前读?求大佬解释
点赞
回复
分享
发布于 2019-08-22 16:18
白夜之星
门头沟学院 Java
可以避免。分快照读,当前读
点赞
回复
分享
发布于 2019-08-22 19:27
皮卡丘啦啦啦
微软_软件工程师
mvcc可以解决幻读,因为读取的是一个历史的快照。如果对数据实时性要求高的话,不推荐。
点赞
回复
分享
发布于 2019-08-22 20:31
还没有回复哦~
相关推荐
2024-12-22 21:51
美团_后端开发(实习员工)
深入理解分布式锁的原理和使用场景
分布式锁是一种常用的技术,在高并发场景下,为了避免多个进程或线程同时操作同一资源造成冲突,引入分布式锁机制。本文将介绍分布式锁的原理和使用场景,并通过 Redis、Zookeeper、Redisson 等中间件来实现分布式锁。分布式锁的特性互斥:不同线程之间互斥,只有一个线程能持有锁。超时机制:代码耗时过长,网络原因等,导致锁一直被占用,造成死锁,所以引入超时机制,超过指定时间自动释放锁。完备的锁接口:阻塞的和非阻塞的接口都要有,lock 和 tryLock。可重入性:当前请求的节点 + 线程唯一标识,可以再次获取同一把锁公平性:锁唤醒时候,按照顺序唤醒,不公平的话,有可能出现饥饿现象。分布式...
技术博客记录
点赞
评论
收藏
分享
2024-12-21 08:57
黑龙江八一农垦大学 Java
#牛客在线求职答疑中心#java场景题
牛客在线求职答疑中心
点赞
评论
收藏
分享
2024-12-23 19:34
四川大学 Java
快手-商业化 一面凉经
上周面的。时长:55min项目拷打java基础类的加载过程JVM怎么判断垃圾对象JVM垃圾回收算法G1、CMS回收的几个阶段多线程状态和状态之间的转换一个任务进入线程池之后的执行流程SynchronizedReentrantLockSpring容器的启动流程Spring的循环依赖IOC的原理AOP的底层实现一条MySQL语句的执行流程MySQL的隔离级别和对应的问题MVCCRedis的持久化Redis高可用怎么实现的,组成架构是什么样的撕单例模式面试官态度很好,我说不上的还都做了解释。JUC和Spring还差些火候。
查看16道真题和解析
点赞
评论
收藏
分享
2024-12-26 01:20
已编辑
东北大学 无线通信工程师
客户端深挖数据库?
为什么官网客户端的jd一般都不要求会数据库但一到面试就开始深挖。
点赞
评论
收藏
分享
2024-12-27 14:18
江苏大学 模具工程师
支持你上班的动力是什么??!
1、免费吹空调(空调温度32℃) 2、免费暖手(暖手垫一开,鼠标都变暖手宝) 3、免费喝水(过滤水,堪比矿泉水) 4、免费玩电脑(工作时长8小时,实际操作0.5小时) 5、免费充电(早充晚充) 6、免费午餐(和大师傅搞好关系,菜都能多大一个) 7、有规律的生活(早睡早起) 8、缴纳社保(老来有保障) 9、聊八卦,天南地北(保证正常社交,以免和社会脱轨)
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
1
33
分享
评论
提到的真题
返回内容
招聘动态
查看更多
26届实习生双选会报名开启
26届实习软件笔试必刷题单
全站热榜
更多
1
...
腾讯实习生基地一面面经
2.9W
2
...
我和面试官有个约会
1.1W
3
...
快手Java日常实习一面
1.1W
4
...
一次失败找实习之旅
7309
5
...
代码与豹尾:一个做题家的赛博修仙启示录
5443
6
...
情人节还在刷牛客的,这辈子有了
4737
7
...
太好了!春招面试有救了!
3504
8
...
兄弟们,考上玉虚宫研究生了,选哪个导师啊
3457
9
...
实在智能日常一面(全程高能,无八股)
3411
10
...
deepseek用来写论文,真的强爆了……
3197
创作者周榜
更多
正在热议
更多
#
大疆今年的机械笔试难吗?
#
34326次浏览
405人参与
#
影石Insta360求职进展汇总
#
105674次浏览
933人参与
#
文科生还参加今年的春招吗
#
1536次浏览
20人参与
#
大疆的机械笔试比去年难吗
#
63227次浏览
575人参与
#
选择和努力,哪个更重要?
#
36069次浏览
387人参与
#
24届市场营销薪资爆料
#
8943次浏览
62人参与
#
一人推荐一个值得去的通信/硬件公司
#
160148次浏览
1729人参与
#
如果公司降薪,你会跳槽吗?
#
42300次浏览
305人参与
#
提前批的机械人,你们都有面试了吗
#
86117次浏览
929人参与
#
产品实习,你更倾向大公司or小公司
#
128592次浏览
1710人参与
#
产品薪资爆料
#
96623次浏览
814人参与
#
春招启动,你开始投递了吗?
#
43251次浏览
420人参与
#
大学四年该怎么过,才不算浪费时间?
#
3255次浏览
32人参与
#
秋招前后对offer的期望对比
#
220310次浏览
1648人参与
#
职场上哪些事情令人讨厌
#
12568次浏览
57人参与
#
机械人,你的第一份感谢信是谁给的
#
19845次浏览
257人参与
#
和牛牛一起刷真题
#
104896次浏览
2066人参与
#
华为工作体验
#
149175次浏览
1052人参与
#
你觉得机械有必要实习吗
#
33508次浏览
318人参与
#
2022毕业的你对23届的寄语
#
35020次浏览
533人参与
牛客网
牛客企业服务