我使用PHP函数mysql_stat()
来获取有关我的MySQL数据库的信息。
有一个条目Slow queries
,在我的情况下是94(301729个查询)。是否有包含有关查询的更多信息的日志文件? (时间,执行时间,查询本身,......)?
14小时前我设置了一台新服务器,内存增加了4倍......但我仍然有0.031154%慢查询,这与以前基本相同,我认为非常高。我真的很想知道哪些是慢查询,以及如何优化它们。慢查询的可接受比率是多少?
答案 0 :(得分:3)
您可以在my.cnf中启用log-slow-queries。这会将慢查询写入日志。
log_slow_queries = /var/log/mysql/mysql-slow.log
如果用户需要等待,我认为你的查询永远不应该慢于.2秒。在执行没有用户参与的crons时,这并不重要。但是如果你使用相同的数据库/表,cron的查询可能会减慢正常查询(锁定/ i / o)。
您可以通过设置正确的索引来优化数据库,并使用EXPLAIN来尝试不同的查询。