add logseq-java
This commit is contained in:
19
logseq-java/pages/MySQL中锁机制.md
Normal file
19
logseq-java/pages/MySQL中锁机制.md
Normal file
@@ -0,0 +1,19 @@
|
||||
- 行锁
|
||||
- 与表锁不能同时存在
|
||||
- 表锁
|
||||
- 锁定一张表
|
||||
- 读写锁
|
||||
- 读锁和读锁不互斥,其它情况互斥
|
||||
- 意向共享锁,意向互斥锁
|
||||
- 是为了解决如果要添加表锁需要检查是否有行锁的情况,可以根据意向锁判断是否存在行锁
|
||||
- 意向锁和意向锁之间不会互斥
|
||||
- 意向共享锁和表级别的读锁之间不互斥,其它会互斥
|
||||
- 意向锁不会与任何行锁互斥
|
||||
- 间隙锁
|
||||
- 锁定的是两个索引之间的间隙,防止新的记录插入到该间隙中,主要是为了解决幻读的问题
|
||||
- 一个事务读取某个范围的记录,另一个事务再这个范围内插入了新的记录
|
||||
- 缺点
|
||||
- 有一定死锁风险,性能影响,添加复杂性,锁定范围可能过大
|
||||
- 临键锁
|
||||
- 特殊的间隙锁,只与非唯一索引有关
|
||||
- 非唯一索引列上都会存在一个临键锁,所著一段左开右闭的区间
|
||||
Reference in New Issue
Block a user