当前位置: 首页 > 后端技术 > Java

mysql锁

时间:2023-04-01 17:04:01 Java

意向锁意向锁,表示一个事务正在或打算锁定一行记录recordlockrows,分为独占锁和共享锁gaplock锁索引之间的间隙nextkeylock:recordlock+gaplock例如id:0,5,10,15,20,25unique,aindex,bselect*fromperformance_schema.data_locks;id=10index_namelock_typelock_modelock_statuslock_dataNULLTABLEIXGRANTEDNULLPRIMARYRECORDX,REC_NOT_GAPGRANTED10a=10index_namelock_typelock_modelock_statuslock_dataNULLTABLEIXGRANTEDNULLtest_a_uindexRECORDX,REC_NOT_GAPGRANTED10,10PRIMARYRECORDX,REC_NOT_GAPGRANTED10b=10index_namelock_typelock_modelock_statuslock_dataNULLTABLEIXGRANTEDNULLtest_t_indexRECORDXGRANTED10,10PRIMARYRECORDX,REC_NOT_GAPGRANTED10test_t_indexRECORDX,GAPGRANTED15,15id=11index_namelock_typelock_modelock_statuslock_dataNULLTABLEIXGRANTEDNULLPRIMARYRECORDX,GAPGRANTED15a=11index_namelock_typelock_modelock_statuslock_dataNULLTABLEIXGRANTEDNULLtest_a_uindexRECORDX,GAPGRANTED15,15b=11index_namelock_typelock_modelock_statuslock_dataNULLTABLEIXGRANTEDNULLtest_t_indexRECORDX,GAPGRANTED15,15id>11index_namelock_typelock_modelock_statuslock_dataNULLTABLEIXGRANTEDNULLPRIMARYRECORDXGRANTED0PRIMARYRECORDXGRANTED5PRIMARYRECORDXGRANTED10PRIMARYRECORDX,GAPGRANTED15id<=11index_namelock_typelock_modelock_statuslock_dataNULLTABLEIXGRANTEDNULLPRIMARYRECORDXGRANTED0PRIMARYRECORDXGRANTED5PRIMARYRECORDXGRANTED10PRIMARYRECORDX,GAPGRANTED15结论:X:nextkeylock,也就是recordlock+previousgapxgap:previousgapxrecnotgap:rec