对于一组(行,页,表)数据进行锁定,禁止其他某些操作,以确保数据操作的准确性
一、粒度分类
- 表级锁:单次锁定整个表
并发低,粒度大,易冲突
开销小、不会出现死锁、加锁解锁速度快
适于以查询为主的情况 - 行级锁:单次锁定单位为行
锁定单位的颗粒度小,锁冲突概率低、并发度高;
开销大、容易出现死锁
二、级别分类
- 共享锁
-
排它锁(互斥锁)
三、操作种类锁
- DDL
对于表结构等操作中使用的锁 - DML
对于数据操作中使用的锁
四、乐观锁与悲观锁
乐观锁与悲观锁是一种思想,在很多方面都被使用
在数据库层面
乐观锁是以版本号等标识作为是否可以修改的条件
悲观锁是以数据库行锁、表锁等为基础做的数据操作上的锁定