首先需要在MySQL配置文件中设置慢查询日志的相关参数。配置文件一般存放在/etc/my.cnf或者/etc/mysql/my.cnf中。如果您使用的是Windows系统,可以在mysql安装目录下找到配置文件my.ini。
在配置文件中,需要添加以下参数:
[mysqld] # 慢查询日志切换 慢速查询日志 = 开 # 慢查询日志路径 Slow_query_log_file = /var/log/mysql/mysql-slow.log # 查询时间大于指定时间的语句被记录(这里设置为1s) 长查询时间 = 1 # 日志分析使用什么格式?此处选择声明。 log_output = FILE
设置完以上参数后,需要重启MySQL服务才能使配置文件生效:
service mysql restart
启动完成后,MySQL会启动慢查询日志。默认情况下,日志路径为/var/log/mysql/mysql-slow.log,记录所有执行时间超过1秒的SQL语句。
在生产环境中,由于日志文件增长非常快,需要定期进行日志清理。您可以使用以下命令将慢查询日志按时间进行拆分,方便后续维护和分析:
mysqladmin -u root -plush-logs
当然,对于某些场景,开启慢查询日志会对系统性能产生一定的影响。因此,在平时的开发和测试过程中,可以考虑关闭慢查询日志,以减少MySQL的负载。