修复 MySQL 中 Table_locks_waited 高的问题

dev*_*per 4 mysql database mysql-management phpmyadmin database-administration

当我查看我的数据库的信息时,我看到以下内容。Table_locks_waited 很高。我该如何缓解这个问题?

在此处输入图片说明

gvi*_*iew 5

首先你应该运行:

 show status like '%\_locks\_%';
Run Code Online (Sandbox Code Playgroud)

这将显示等待的查询与能够立即获得锁定的查询的比率。可能您有更多的写入读取组合,这导致 mysql 必须比最佳状态更频繁地等待,但无法使用单个统计数据分析整体性能。

我的第一个建议是更改您的表,以便您将 Innodb 引擎用于承受事务负载首当其冲的表。Innodb 具有行锁定而不是表锁定,并且还具有聚集索引和查询数据缓存,这在许多情况下往往会提高性能。