可以通过检查table_locks_waited和table_locks_immediate状态变量来分析系统上的表锁定争夺:
mysql> show status like ‘Table%’;
+—————————-+———-+
| Variable_name | Value |
+—————————-+———-+
| Table_locks_immediate | 105 |
| Table_locks_waited | 3 |
+—————————-+———-+
2 rows in set (0.00 sec)
如果Table_locks_waited的值比较高,则说明存在着较严重的表级锁争用情况。这时,需要我们对应用做进一步的检查,来确定问题所在。
mysql> show status like ‘Table%’;
+—————————-+———-+
| Variable_name | Value |
+—————————-+———-+
| Table_locks_immediate | 105 |
| Table_locks_waited | 3 |
+—————————-+———-+
2 rows in set (0.00 sec)
如果Table_locks_waited的值比较高,则说明存在着较严重的表级锁争用情况。这时,需要我们对应用做进一步的检查,来确定问题所在。