我在 my.ini
中添加了以下内容log_slow_queries = "C:\Program Files (x86)\MySQL\MySQL Server 5.0\mysql-slow.log"
long_query_time = 3
log-queries-not-using-indexes
我重启了MySQL服务。 mysql-slow.log
中列出了慢查询,但问题是列出了所有查询。我只想列出那些花费超过3秒的查询
以下是mysql-slow.log
的摘录:
# Query_time: 0 Lock_time: 0 Rows_sent: 29 Rows_examined: 29
SHOW TABLES LIKE 'tblRaw2%';
这里Query_time被列为0我只想要那些超过3秒的查询。 如果my.ini中还有其他字段要设置,请指出
由于
答案 0 :(得分:3)
您的数据库可能没有indexes
,您已定义:
log-queries-not-using-indexes
应该被记录下来。
删除log-queries-not-using-indexes
然后重试。
答案 1 :(得分:3)
这可能会有所帮助
如果在启用慢查询日志的情况下使用此选项,则会记录预期检索所有行的查询。请参见第5.2.5节“慢查询日志”。此选项并不一定意味着不使用索引。例如,使用完整索引扫描的查询使用索引但会被记录,因为索引不会限制行数。
您的两种情况都只是案例
答案 2 :(得分:0)
如果您正在寻找有关如何记录MySQL慢查询和分析它们的相关信息,请查看http://www.installationpage.com/mysql/mysql-importance-slow-log-processing/上有关该主题的最新帖子