如何查看MySQL慢查询SQL:方法与步骤详解
要查看MySQL慢查询SQL,首先需要开启慢查询日志并分析其中的记录,具体操作包括配置慢查询参数、使用工具解析日志以及结合执行计划进行优化,以下是详细步骤:
-
开启慢查询日志
在MySQL配置文件(如my.cnf或my.ini)中设置以下参数:
slow_query_log = ON slow_query_log_file = /var/log/mysql/slow.log long_query_time = 2 # 定义慢查询阈值(单位:秒)
重启MySQL服务使配置生效,或通过命令行动态启用:
SET GLOBAL slow_query_log = 'ON';
-
分析慢查询日志
- 直接查看日志文件:
cat /var/log/mysql/slow.log
- 使用MySQL内置工具
mysqldumpslow汇总日志:mysqldumpslow -s t /var/log/mysql/slow.log # 按耗时排序
- 直接查看日志文件:
-
利用性能库(Performance Schema)
对于MySQL 5.6及以上版本,可通过performance_schema数据库查询慢SQL:SELECT * FROM performance_schema.events_statements_summary_by_digest ORDER BY SUM_TIMER_WAIT DESC LIMIT 10;
-
结合EXPLAIN诊断SQL性能
针对日志中发现的慢SQL,使用EXPLAIN分析执行计划:EXPLAIN SELECT * FROM users WHERE age > 30; # 检查索引使用情况
重点关注
type(访问类型)、key(使用索引)和rows(扫描行数)字段。 -
使用监控工具(如Percona Toolkit、pt-query-digest)
通过第三方工具进行高级分析,pt-query-digest /var/log/mysql/slow.log # 生成详细报告
关键提示:
- 确保
long_query_time设置合理,避免日志过大。 - 定期清理慢查询日志,防止磁盘空间占用。
- 索引优化和查询重构是解决慢SQL的核心手段。
通过以上方法,可系统化定位并优化MySQL慢查询,提升数据库性能。
未经允许不得转载! 作者:HTML前端知识网,转载或复制请以超链接形式并注明出处HTML前端知识网。
原文地址:https://www.html4.cn/12962.html发布于:2026-08-25





