| 鎖級別 | 典型引擎 | 特點 |
|---|---|---|
| 頁鎖 | BDB | 介於表鎖與行鎖間,已淘汰 |
| 表鎖 | MyISAM, MEMORY, ISAM | 開銷最小、鎖定快、併發度最低、死鎖少 |
| 行鎖 | InnoDB | 開銷最大、併發度最高、支援事務、易死鎖 |
MySQL 內部維護兩個佇列:
LOW_PRIORITY / HIGH_PRIORITY 可改變預設行為。
-- 客戶端 1:長時間查詢 (約 30 秒)
SELECT COUNT(*) FROM content GROUP BY content;
-- 客戶端 2:更新同表
UPDATE content SET content='I love you' WHERE id=444;
-- 等待 30.68 秒才執行 (排隊)
-- 客戶端 1 結束後
UPDATE content SET content='I hate you' WHERE id=444;
-- 僅 0.02 秒 (無阻塞)
slave_parallel_workers (5.6+)innodb_lock_wait_timeout (預設 50s) 避免無限等待SHOW ENGINE INNODB STATUS 中的 LATEST DETECTED DEADLOCK