MySQL 慢查询日志是记录服务器上执行时间超过指定阈值的查询的日志文件。通过分析慢查询日志,可以发现和修复导致数据库性能下降的查询。
然后根据explain命令查询sql语句的执行计划,根据实际情况进行优化
永久开启
1、修改MySQL配置文件
[mysqld]
slow_query_log = 1
slow_query_log_file = /var/log/mysql/mysql-slow.log
long_query_time = 2
slow_query_log:设置为1启用慢查询日志。
slow_query_log_file:指定慢查询日志文件的路径。
long_query_time:设置记录为慢查询的执行时间阈值,单位是秒。
重启MySQL服务使配置生效
sudo systemctl restart mysql;
临时开启
# 开启慢查询日志,只对当前数据库生效,并且重启数据库后失效
set global slow_query_log = 1;
# 设置阈值
set long_query_time = 3;