【问题标题】:Server bogged and mysql query slow log服务器陷入困境和mysql查询慢日志
【发布时间】:2011-10-30 06:22:40
【问题描述】:

我的服务器 (PHP+MySQL) 突然出现严重的性能问题。我启用了 MySQL 慢查询日志,他开始显示一些甚至需要 25 秒才能完成的查询。例如这个需要 15 秒:

# Time: 110823  2:07:01
# User@Host: ***[***] @ localhost []
# Query_time: 15  Lock_time: 0  Rows_sent: 1  Rows_examined: 1
use ***;
SELECT `users`.*
FROM (`users`)
WHERE `users`.`id` = 4413
ORDER BY `users`.`id` ASC
LIMIT 0, 1;

要点是,在 Id 字段上有一个主键,如果我从 phpmyadmin 运行查询,它会在 0.00008 秒内执行。这是解释计划:

id  select_type     table   type    possible_keys   key     key_len     ref     rows    Extra
1   SIMPLE  users   const   PRIMARY     PRIMARY     4   const   1   

我真的很困惑,因为托管服务提供商说一切都很好并且是我的数据库。我用 Matthew Montgomery 的 tune-primer 检查了所有参数,所有设置看起来都很好......

【问题讨论】:

  • 此查询可能出现在慢查询日志中,因为在某个时间点数据库服务器超载。我真的不认为在正常情况下这样的查询可能需要 25 秒才能完成

标签: mysql performance


【解决方案1】:

我确认它的答案。数据库因多次启动的未索引查询而陷入困境。它们没有显示在 mysql-slow 日志中,因为它们不到 1 秒,但它们被执行了很多次。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-31
    • 1970-01-01
    • 2012-07-21
    • 2012-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多