日常笔记--MySQL的锁

92 阅读1分钟

锁的分类:

在这里插入图片描述

根据锁粒度划分的锁的特点:

表锁(MyISAM/Memory):表锁的颗粒度最大,但是对系统的负面影响最小,基本不会发生死锁;锁定一张表,资源争用概率更大,并发效率低;

行锁(InnoDB):行锁颗粒度小,但是操作时对系统影响最大,执行指令要不断的获取锁和释放锁;同时因为只是操作一行,最容易发生死锁;资源争用概率最小;

页锁:介于二者之间的锁,用的不太多

表锁更适合于查询,行锁更适合于更新

共享锁、排他锁==>读锁、写锁

读锁和写锁相当于拿到了两个不同的权限,比如酒店看房子,获取了读锁,相当于获取了看房的资格,你可以看,她也可以看,但不可以乱动(修改)

写锁相当于缴费获取了入住的资格,那么其他人又不能看房,又不能进来乱动,而自己则可以看,还可以乱动