美团二面时被问到MySQL的InnoDB锁的类型和区别,答完以后面试官说整体是对的,但是细节上有点问题,想问问各路大神,这样回答是哪里不对吗?回答如下:
共享锁与排他锁:
lock in share mode:共享锁,可用于读锁
for update:排他锁,可用于写锁
共享锁与排他锁之间互相排斥(读写互斥)
共享锁与排他锁之间不排斥(读读共享)
排他锁与排他锁之间互相排斥(写写互斥)
InnoDB有行级锁(行级别)。
主键索引或唯一索引:行级锁
非唯一索引:Next-Key Lock = 行级锁+间隙锁gap(防止幻读)
无索引:退化为表级锁
InnoDB有意向锁(表级别)。
当其他事务需要获取表级锁时(如:无索引退化未表级锁),需要逐行检查是否其他事务获取了行级锁,效率会低。因此当其他事务获取锁时,会加一个意向锁,这样当其他事务需要获取表级锁时就不用逐行检查,只要判断是否有意向锁就可以了,有则阻塞。
全部评论
膜拜大佬,真的难
2 回复 分享
发布于 2022-04-01 18:21
我觉得面试官想你说说MVCC,现在就算是事务,默认也是不加for update和lock in share mode,最常用的你没说
1 回复 分享
发布于 2022-04-16 10:50
问到一样的了,问我myIsam和innodb的区别
点赞 回复 分享
发布于 2022-05-11 21:16
字节跳动校招内推码: HC9H2MF 投递链接: https://jobs.toutiao.com/s/FNmxaGn 本部门 JAVA 实习(三亚,北京,上海,杭州都可以奥): 字节跳动校招内推码: HC9H2MF 投递链接: https://jobs.toutiao.com/s/FNmmYYc map.put(0,' w'); map.put(1,'a'); map.put(2,'n'); map.put(3,'g'); map.put(4,'w'); map.put(5,'e'); map.put(6,'n'); map.put(7,'h'); map.put(8,'a'); map.put(9,'n'); map.put(10,'2013'); Print('W_ _X',' map.values()') 可沟通进度等
点赞 回复 分享
发布于 2022-04-27 18:54
除了for update也是适用于读锁之外,感觉也没啥问题
点赞 回复 分享
发布于 2022-04-19 21:07
主键索引或唯一索引:如果等值匹配找不到的话, 是不是会退化成 间隙锁呀?
点赞 回复 分享
发布于 2022-04-10 22:48
这不答得挺好的
点赞 回复 分享
发布于 2022-04-09 09:53

相关推荐

09-22 10:43
已编辑
门头沟学院 Java
面试官会根据我的回答继续深挖或引申到其他问题,我不会的地方也很有耐心的给我讲解,一小时高强度八股收获满满,发面经攒人品😋八股1. ThreadLocal原理,使用场景2. java的引用类型3. 线程池核心参数,如何设置线程池参数4. 线程池执行过程5. 线程池提交任务的方法submmit和excute有什么区别 (不会)6. 线程池提交任务失败如何感知 (不会)7. HashMap扩容机制,2倍扩容的好处8. HashMap的put和get方法的执行过程9. HashMap的key是否可以为null,为什么null默认存到下标0处10. 为什么链表到红黑树阈值是8,反过来是611. JDK 7—>8 HashMap从头插法变成尾插法了解吗 (不会)12. 使用过哪些JVM工具? (没用过)13. 双亲委派模型14. 如何打破双亲委派模型?有哪些经典设计是打破双亲委派模型的?15. lamda表达式用过吗 (不会)16. mysql中一条sql语句的执行过程17. order by执行过程?没有索引的情况下怎么执行的? (不会)18. redo log、undo log、bin log提交时机19. mysql有哪些锁20. 行级锁锁的是数据行本身吗?21. 主从复制执行过程,可能出现什么问题?22. 为什么要分库?为什么要分表?23. 分表之后,主从复制可能出现什么问题?24. mysql集群解决了什么问题?会产生什么问题?算法实现一个单例模式1. 为什么要在instance前加volatile和static2. volatile是如何实现可见性的?3. volatile还实现了什么功能,怎么实现的,加了哪几个屏障4. 为什么synchronized可以直接锁"类名.class",它为什么是唯一的5. 两次判断各自的作用许愿二面~9.17 更新一面一周后约了明天二面
点赞 评论 收藏
分享
评论
10
80
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务