标签:行级 加锁 区别 死锁 粒度 MySQL 或表级 表级
本旨在学习记录,内容源自JavaGuide,作者在此基础上进行补充说明、整理论述,使其能以一种更为逻辑地清晰地方式表达出“请你说一下行级锁和表级锁的区别”的理解,更多适应于java面试回答,亦可作对请你说一下自己对行级锁和表级锁的简要了解。
MyISAM 和 InnoDB 存储引擎使用的锁:
- MyISAM 采用表级锁(table-level locking)。
- InnoDB 支持行级锁(row-level locking)和表级锁,默认为行级锁。
表级锁和行级锁对比:
- 表级锁: MySQL 中锁 粒度最大 ,对当前操作的整张表加锁,加锁的开销小,加锁快,不会出现死锁,(因为要么一次性获取全部的锁,要么等待)。其锁定粒度最大,触发锁冲突的概率高,并发度低。
- 行级锁: MySQL 中锁 粒度最小 ,只针对当前操作的行进行加锁,加锁的开销大,加锁慢,会出现死锁。 行级锁能大大减少数据库操作的冲突。其锁粒度最小,触发锁冲突的概率低、并发度高。
标签:行级,加锁,区别,死锁,粒度,MySQL,或表级,表级 来源: https://blog.csdn.net/weixin_51560103/article/details/121060127
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。