品易云推流 关闭
文章 > MySQL > mysql中有几种粒度锁?

mysql中有几种粒度锁?

头像

小妮浅浅

2021-04-22 14:56:12700浏览 · 0收藏 · 0评论

1、表锁

表锁是指锁定时锁定整个表,下一个事务访问该表时,必须等到上一个事务解除锁定后再访问表

特点为粒度大,锁定简单,容易冲突。

2、行锁

是指锁定时锁定的是表的某行或多行记录,其他事务访问同一表时,只有锁定的记录不能访问,其他记录可以正常访问

特点为粒度小,锁比表锁麻烦,不易碰撞,比表锁支持的并发高

3、记录锁

记录锁也是锁的一种,但记录锁的范围只是表的某个记录,记录锁是事务锁后锁的只有表的某个记录。

4、间隙锁

间隙锁属于锁中的一种,间隙锁在事务上锁后锁定的是表记录的某个区间,表的相邻ID之间出现间隙时形成间隙,遵循左右关闭的原则。

5、临键锁

临键锁也是行锁的一种,是INNODB的行锁默认算法,总之是记录钥匙和间隙钥匙的组合,临时钥匙锁定查询的记录,同时锁定该范围查询内的所有间隙空间,锁定相邻的下一个区间。

以上就是mysql中5种粒度锁的介绍,希望对大家有所帮助。更多编程基础知识学习:python学习网

关注公众号

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图 底部广告图按钮