在MySQL中记录慢速查询
我在my.ini中添加了以下内容在MySQL中记录慢速查询,mysql,Mysql,我在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
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%';
这里查询时间列为0,我只想要那些需要3秒以上的查询。
如果my.ini中还有其他字段需要设置,请指出
谢谢您的数据库可能没有
索引
,您已经定义了:
应记录不使用索引的日志查询
请删除不使用索引的日志查询,然后重试。这可能会有所帮助
如果在启用慢速查询日志的情况下使用此选项,则会记录预期检索所有行的查询。参见第5.2.5节“慢速查询日志”。此选项不一定意味着不使用索引。例如,使用完整索引扫描的查询使用索引,但会被记录,因为该索引不会限制行数
您的两个场景都只是案例如果您正在查找与如何记录MySQL慢速查询和分析它们相关的信息,请查看我在show tables命令中关于此主题的最新帖子,MySQL内部可能会将此视为不使用索引的查询,您是否有上述示例?是的。。对于特定的表也会发生这种情况。例如,我有一个名为tblRaw20110823的表,如果我“从tblRaw20110823中选择*”,它将与查询时间一起列出:0