面试标准满分回答简洁、条理清晰、面试官最爱面试官您好MySQL 慢查询我一般按实时排查 日志溯源 SQL分析三步快速定位实时抓现场SQL先执行show full processlist;查看当前正在执行的SQL通过执行时间Time、执行状态直接定位正在阻塞、耗时久的慢SQL快速解决线上即时卡顿问题。通过慢查询日志精准溯源提前开启MySQL慢查询日志设置合理阈值一般1秒记录超时SQL和未走索引的语句使用MySQL自带mysqldumpslow工具按耗时、访问次数排序批量筛选出高频慢SQL。SQL执行计划分析根因拿到慢SQL后用explain分析执行计划重点检查type是否全表扫描、key是否命中索引、扫描行数rows是否过多大部分慢查询根源都是无索引、索引失效、大分页、多表低效join针对性优化即可。MySQL 慢查询快速定位 排查最实用版我给你一套最快、最直接、生产环境通用的慢查询定位方法不用复杂工具5 分钟就能找到慢 SQL。一、先看 3 个关键配置开启慢查询先确认慢查询是否开启这是定位的基础。-- 查看慢查询是否开启SHOWVARIABLESLIKEslow_query_log;-- 查看慢查询阈值超过这个时间就算慢查询默认 10 秒建议改成 1 秒SHOWVARIABLESLIKElong_query_time;-- 查看慢查询日志存放路径SHOWVARIABLESLIKEslow_query_log_file;临时开启重启 MySQL 失效SETGLOBALslow_query_log1;SETGLOBALlong_query_time1;-- 超过 1 秒就算慢查询永久开启my.cnf / my.inislow_query_log 1 long_query_time 1 slow_query_log_file /var/lib/mysql/slow.log log_queries_not_using_indexes 1 # 没走索引的 SQL 也记录二、最快定位慢 SQL 的 3 种方法方法 1直接看慢查询日志最准# 直接查看最新慢 SQLtail-n100/var/lib/mysql/slow.log# 按时间排序找最慢的 SQLmysqldumpslow-st /var/lib/mysql/slow.logmysqldumpslow是 MySQL 自带工具不用安装直接用。常用命令# 取出访问量最高的 10 条慢 SQLmysqldumpslow-sc-t10slow.log# 取出时间最长的 10 条mysqldumpslow-st-t10slow.log方法 2实时查看正在执行的 SQL最快-- 查看当前正在跑的 SQLSHOWFULLPROCESSLIST;-- 过滤出 执行时间 1 秒 的 SQLSELECT*FROMinformation_schema.PROCESSLISTWHERETIME1ANDINFOISNOTNULL;看到Time 很大、State 为 Sending data的 SQL99% 就是慢查询。方法 3查看性能视图5.7 / 8.0 支持-- 查看耗时最高的 SQLSELECT*FROMsys.schema_table_statisticsORDERBYtotal_latencyDESCLIMIT10;-- 查看全表扫描最多的 SQL没走索引SELECT*FROMsys.statement_analysisWHEREfull_scanYESLIMIT10;三、找到慢 SQL 后怎么判断为什么慢用EXPLAIN一看就懂EXPLAINSELECT*FROMordersWHEREuser_id1001;重点看 3 列type最好是 ref / range最差是 ALL全表扫描key显示 NULL 没走索引rows扫描行数越大越慢只要出现type ALLkey NULL就是没走索引慢 100% 是这个原因。四、慢查询 90% 都是这 4 个原因没加索引 / 索引失效最常见**SELECT *** 查太多字段LIMIT 太大如 LIMIT 100000,10join 太多表、子查询太深五、最快定位流程背下来开启慢查询set global slow_query_log1;看慢日志mysqldumpslow -s t slow.log找到慢 SQLEXPLAIN看是否走索引加索引 / 优化 SQL总结慢查询日志是定位慢 SQL 的最准方式show processlist适合实时抓正在卡的 SQLEXPLAIN是判断是否走索引的神器90% 慢查询 没索引 or 索引失效精简背诵版短回答直接背首先用show full processlist实时查看正在运行的长耗时SQL再依靠慢查询日志结合 mysqldumpslow 工具筛选历史慢SQL最后通过 explain 分析执行计划判断是否存在全表扫描、索引失效等问题完成快速定位与优化。