关于java:mysql-lock

intention lock 意向锁,表明有事务正在或者打算锁住一行记录
record lock行所,分为排他锁和共享锁
gap lock锁住索引之间的间隙
next key lock :record lock + gap lock

for example
id :0,5,10,15,20,25
unique,a
index,b

id=10
index_name lock_type lock_mode lock_status lock_data
NULL TABLE IX GRANTED NULL
PRIMARY RECORD X,REC_NOT_GAP GRANTED 10
a=10
index_name lock_type lock_mode lock_status lock_data
NULL TABLE IX GRANTED NULL
test_a_uindex RECORD X,REC_NOT_GAP GRANTED 10, 10
PRIMARY RECORD X,REC_NOT_GAP GRANTED 10
b=10
index_name lock_type lock_mode lock_status lock_data
NULL TABLE IX GRANTED NULL
test_t_index RECORD X GRANTED 10, 10
PRIMARY RECORD X,REC_NOT_GAP GRANTED 10
test_t_index RECORD X,GAP GRANTED 15, 15
id=11
index_name lock_type lock_mode lock_status lock_data
NULL TABLE IX GRANTED NULL
PRIMARY RECORD X,GAP GRANTED 15
a=11
index_name lock_type lock_mode lock_status lock_data
NULL TABLE IX GRANTED NULL
test_a_uindex RECORD X,GAP GRANTED 15, 15
b=11
index_name lock_type lock_mode lock_status lock_data
NULL TABLE IX GRANTED NULL
test_t_index RECORD X,GAP GRANTED 15, 15
id>11
index_name lock_type lock_mode lock_status lock_data
NULL TABLE IX GRANTED NULL
PRIMARY RECORD X GRANTED 0
PRIMARY RECORD X GRANTED 5
PRIMARY RECORD X GRANTED 10
PRIMARY RECORD X,GAP GRANTED 15
id<=11
index_name lock_type lock_mode lock_status lock_data
NULL TABLE IX GRANTED NULL
PRIMARY RECORD X GRANTED 0
PRIMARY RECORD X GRANTED 5
PRIMARY RECORD X GRANTED 10
PRIMARY RECORD X,GAP GRANTED 15

论断:
X:next key lock,也就是recordlock+ previous gap
x gap:previous gap
x rec not gap: rec

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理