我在my.cnf中启用了以下变量:
log_slow_queries = "/var/log/mysql/mysql-slow.log"
long_query_time = 2
log-queries-not-using-indexes并重新启动了MySQL服务。然后mysql-slow.log每5秒重复记录2次查询(都是完全扫描的小表,不涉及索引)。这两个查询实际上花费的时间都不到0.01秒。日志文件变得越来越大。
我的服务器版本: 5.5.31-0ubuntu0.12.04.1-log (Ubuntu)。
我想知道日志文件执行写入工作的频率是多少,甚至是冗余的工作?我们可以控制一些其他的系统变量来减慢这项工作吗?也有一些类似的问题,例如:
Mysql slow query log is logging faster queries
.
一些专家能解释一下吗?
非常感谢!
发布于 2013-05-18 08:02:21
根据the slow query log上的文档,这是经过设计的
服务器按以下顺序使用控制参数来确定是否将查询写入慢查询日志:
对于慢查询,查询必须不是管理语句,或者-- specified.
另外,进一步解释一下这个variable setting does,
如果在启用慢查询日志的情况下使用此选项,则会记录预期检索所有行的查询。请参阅第5.2.5节,“慢查询日志”。此选项并不一定意味着不使用索引。例如,使用完整索引扫描的查询使用索引,但会被记录下来,因为索引不会限制行数。
这些查询将在每次触发时被记录下来,直到它们被修改为与触发其日志的行为不匹配为止。如果您关心磁盘空间,您可以轮换日志,正如您链接的问题之一所建议的那样。请参阅此literature on logrotate and example configuration。
https://stackoverflow.com/questions/16618527
复制相似问题