[推薦] Mysql Lock Index and Deadlock
Source
Summary
- index 會造成寫入效能下降(lock),使用時須謹慎評估
- 先篩選出 pk(fk) 後再使用他們避免 gap lock(不要用 where pk > ?)
- 沒特別狀況就使用 Read Committed,因預設的 Repeatable Read 在執行 update 時會把所有的 where 條件都 lock 起來,而 RC 只要條件不符就會 release
- 可以使用 use index 決定要使用的 index,8.0 之後排序才有意義
Main idea
首先點出結論再依照不同類型的 index 套入 isolation level 介紹順序、gap lock 是如何造成 dead lock 的,最後給予幾點建議
發佈時間
2022-7-2