你能给我一个关于如何启用MySQL的慢查询日志的例子吗?
根据文件 :
从MySQL 5.1.29开始,使用–slow_query_log [= {0 | 1}]启用或禁用慢速查询日志,还可以使用–slow_query_log_file = file_name来指定日志文件名。 –log-slow-queries选项已被弃用。
那么我该如何使用这个选项呢? 我可以把它放在my.cnf吗? 一个例子将不胜感激。
正确。
最好把它放在my.cnf文件的通用/全局(顶部)部分。
有两件事需要做:(1)启用它,(2)定义日志文件的目的地。
slow_query_log = 1 slow_query_log_file = /var/log/mysql/slow-query.log
希望这可以帮助。
这是一件有趣的事情。
MySQL 5.1 / 5.5允许您将慢查询日志转换为MyISAM。
以下是我为我的客户做的事情:
步骤1)将这些行添加到/etc/my.cnf
log_output=TABLE slow_query_log slow_query_log_file=slow-queries.log
步骤2)重新启动mysql(服务mysql重启)
此时,表mysql.slow_log存在,但作为存储引擎CSV。
步骤3)将mysql.slow_log转换为MyISAM并索引start_time字段
SET @old_log_state = @@global.slow_query_log; SET GLOBAL slow_query_log = 'OFF'; ALTER TABLE mysql.slow_log ENGINE = MyISAM; ALTER TABLE mysql.slow_log ADD INDEX (start_time); SET GLOBAL slow_query_log = @old_log_state;
现在你可以运行SELECT查询了。
试一试。