可以找出哪些MySQL查询速度慢吗?

时间:2012-09-13 18:03:06

标签: php mysql query-optimization

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

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

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

1 个答案:

答案 0 :(得分:3)

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

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

如果用户需要等待,我认为你的查询永远不应该慢于.2秒。在执行没有用户参与的crons时,这并不重要。但是如果你使用相同的数据库/表,cron的查询可能会减慢正常查询(锁定/ i / o)。

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