mysql——行锁、表锁、页锁、间隙锁、Next-Key Locks

本文详细介绍了MySQL的锁定机制,从表级锁、行级锁到页级锁,重点讨论了行级锁中的共享锁和排他锁,以及间隙锁和Next-Key Locks的概念和应用场景。同时,文章提供了表级锁和行级锁的优化建议,帮助提升数据库并发性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.表级锁

1.什么是表级锁?

1.他是mysql中颗粒度最大的锁,实现逻辑简单,加锁、放锁速度快;
2.它会锁定整个表,所以避免了死锁问题
3.它的粒度大,所以并发性能最低。

2.表级锁有哪些?

  • 1.表共享读
    不会阻塞其他用户对同一表的请求,但会阻塞对同一表的请求;
  • 2.表独占写
    阻塞其他用户对同一表的读和写操作;

3.怎么加表锁?——自动加,不用人工干预

  • 1.加读锁
    在执行select语句之前,自动加读锁;
  • 2.加写锁
    在执行update、delete、insert时,自动加写锁。

4.表级锁优化建议

  • 尽可能让锁定的时间变短
  • 然后就是让可能并发进行的操作尽可能的并发

2.行级锁

1.什么是行级锁?

行级锁是通过给索引上的索引项加锁来实现的,不是对记录加的锁,只有通过索引条件检索数据,InnoDB才使用行级锁,否则InnoDB使用表锁

  • 1.它的颗粒度很小,所以资源
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值