数据库表锁与行锁

行锁:命中索引时,对相应的行进行加锁,期间其他请求不能访问该行。

表锁:没有命中索引时,全表扫描,对整张表进行加锁。

 

行锁可以理解为接口,有几个实现类:记录锁、间隙锁、临键锁。

 

记录锁:命中唯一索引(比如说主键),此时会把那一行数据锁住。

 

间隙锁:命中索引,且是范围查询,但是没有在范围之中的数据,此时会把整个区间的数据全部锁住(左开右闭)。

 

临键锁:命中索引,且是范围查询,且命中数据,但是右区间没有匹配,此时会把区间和右区间的下一个范围内的数据锁住。

posted @ 2021-03-12 20:53  Coder_Dai  阅读(729)  评论(0)    收藏  举报