查看当前慢查询配置,确认slow_query_log、long_query_time和slow_query_log_file设置;2. 使用SET GLOBAL long_query_time=1设置阈值;3. 开启慢查询日志并指定日志文件路径;4. 修改my.cnf或my.ini配置文件,添加相关参数实现永久生效。合理设置阈值并分析日志可优化性能。

在 mysql 中配置慢查询阈值,主要是通过设置 long_query_time 参数来实现。这个参数定义了查询执行时间超过多少秒的 SQL 被记录为“慢查询”。配合开启慢查询日志功能,可以有效帮助定位性能瓶颈。
1. 查看当前慢查询配置
登录 MySQL 后,先查看当前的慢查询设置:
SHOW VARIABLES LIKE ‘slow_query_log’;
SHOW VARIABLES LIKE ‘long_query_iime’;
SHOW VARIABLES LIKE ‘slow_query_log_file’;
确认是否已开启慢日志以及当前的阈值(单位:秒)。
2. 设置慢查询阈值
通过修改 long_query_time 来设定阈值。例如,将阈值设为 1 秒:
SET GLOBAL long_query_time = 1;
注意:该参数是会话级缓存,建议使用 GLOBAL 级别设置,使新连接生效。修改后可能需要重新连接才能看到新值。
3. 开启慢查询日志
如果尚未开启,需手动启用:
SET GLOBAL slow_query_log = ‘ON’;
同时确保日志文件路径正确,可通过 slow_query_log_file 查看或设置存储位置。
4. 永久配置(通过配置文件)
上述设置在重启后会失效,要永久生效需修改 MySQL 配置文件(通常是 my.cnf 或 my.ini):
在 [mysqld] 段落下添加:
slow_query_log = ON slow_query_log_file = /var/log/mysql/slow.log long_query_time = 1
保存后重启 MySQL 服务使配置生效。注意确保 MySQL 进程对日志文件有写入权限。
基本上就这些。合理设置慢查询阈值(如 0.5 或 1 秒),结合 mysqldumpslow 或 pt-query-digest 分析日志,能有效优化数据库性能。


