鎖住整個表,因此開銷小,加鎖比較快,無死鎖狀況,鎖的粒度較大,在併發狀況下,產生鎖等待的機率比較高,因此支持的併發數較低,通常用於查找。html
mysql> LOCK TABLE 表名 [READ | WRITE] [,表名 [READ | WRITE]...] #加鎖 mysql> UNLOCK TABLES #解鎖
mysql> SHOW STATUS LIKE 'Table_locks_immediate';
表示能夠當即獲取鎖的查詢次數,每獲取一次鎖就增長1mysql
mysql> SHOW STATUS LIKE 'Table_locks_waited';
表示鎖等待的次數sql
步驟 | Session1 | Session2 |
1 | 給myisam_lock加讀鎖 | |
2 | 能夠查詢myisam_lock表數據 | 能夠查詢myisam_lock表數據 |
3 | 不能夠增刪改myisam_lock表數據 | 增刪改myisam_lock表數據阻塞 |
4 | 不能夠增刪改查其餘表數據 | 能夠增刪改查其餘表數據 |
5 | 釋放myisam_lock的讀鎖 | 釋放讀鎖同時阻塞的增刪改爲功 |
步驟 | Session1 | Session2 |
1 | 給myisam_lock加寫鎖 | |
2 | 能夠查詢myisam_lock表數據 | 查詢myisam_lock表數據阻塞 |
3 | 釋放myisam_lock的寫鎖 | 釋放寫鎖同時阻塞的查詢成功 |
4 | 給myisam_lock加寫鎖 | |
5 | 能夠增刪改myisam_lock表數據 | 增刪改myisam_lock表數據阻塞 |
6 | 不能夠增刪改查其餘表數據 | 能夠增刪改查其餘表數據 |
7 | 釋放myisam_lock的寫鎖 | 釋放寫鎖同時阻塞的增刪改爲功 |
實踐結束,我以爲有必要解釋一下關於表鎖的特色:併發
本文索引關鍵字:性能
讀鎖(共享鎖):http://www.cnblogs.com/huanStephen/p/8067972.html#s_lockspa
寫鎖(排它鎖):http://www.cnblogs.com/huanStephen/p/8067972.html#x_lock線程
歡迎你們索引!code