1

我使用 PHP 函数mysql_stat()来获取有关我的 MySQL 数据库的信息。

有一个条目Slow queries,在我的例子中是 94(301729 个查询)。是否有包含有关查询的更多信息的日志文件?(时间,执行时间,查询本身,...)?

14 小时前我设置了一个新服务器,内存增加了 4 倍,......但我仍然有 0.031154% 的慢查询,这与以前基本相同,我认为这非常高。我真的很想知道哪些是慢查询,以及如何优化它们。慢查询的可接受比率是多少?

4

1 回答 1

3

您可以在 my.cnf 中启用 log-slow-queries。这会将慢速查询写入日志。

log_slow_queries = /var/log/mysql/mysql-slow.log

我认为如果用户需要等待,您的查询速度永远不会低于 0.2 秒。在不涉及用户的情况下执行 crons 时,这并不重要。但是如果使用同一个数据库/表,cron的查询会减慢正常查询(锁定/i/o)。

您可以通过设置正确的索引来优化您的数据库,并使用 EXPLAIN 尝试不同的查询。

于 2012-09-13T18:04:35.157 回答