MySQL 记录慢查询

MySQL 记录慢查询

我已经告诉 MySQL 记录花费时间超过一秒的查询(1在配置中)...但是我看到像这样的查询花费的时间远远少于一秒......

# Time: 101108  6:39:32
# User@Host: source_member[source_member] @ localhost []
# Query_time: 0.007271  Lock_time: 0.000062 Rows_sent: 1  Rows_examined: 2635
SET timestamp=1289216372;
SELECT
                                                id,
                                                name,
                                                email,
                                                auth_key
                                        FROM member
                                        INNER JOIN source_member.group_assoc ON (
                                                source_member.group_assoc.group_id = 121 AND
                                                source_member.group_assoc.member_id = member.id
                                        );

我的设置是...

log_slow_queries        = /var/log/mysql/mysql-slow.log
long_query_time = 1
log-queries-not-using-indexes

我应该问......这意味着它只记录根本没有任何索引的查询?

答案1

什么是长查询时间设置为?log-long-format 或 log-queries-not-using-indexes active?

最可能的解释是日志设置不正确。

--log-queries-not-using-indexes 和 log-long-format 都会导致未使用索引的查询被记录。有时不使用索引会更快,这会导致大量的日志垃圾。

还要注意,您可能在某处锁定 IO。long_query_time 是根据 WALL 时间而不是 CPU 时间进行检查的。

相关内容