news 2026/7/23 14:18:04

MySQL SQL 优化实战——慢查询、Explain 执行计划、索引优化

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MySQL SQL 优化实战——慢查询、Explain 执行计划、索引优化

SQL 优化是后端开发面试中最高频的问题之一。这篇从实战出发,讲清楚怎么定位慢 SQL、怎么优化、怎么看执行计划。

一、定位慢 SQL

-- 开启慢查询日志SETGLOBALslow_query_log=ON;SETGLOBALlong_query_time=1;-- 超过1秒SETGLOBALlog_queries_not_using_indexes=ON;-- 查看慢日志mysqldumpslow-s t-t10/var/lib/mysql/slow.log

二、Explain 执行计划

EXPLAINSELECT*FROMseckill_orderWHEREstatus=0;
列名说明好/坏
typeALL=全表,const=主键ALL ❌ const ✅
key使用的索引NULL ❌
rows扫描行数越小越好
ExtraUsing filesort=没走排序索引

三、索引优化

-- 单列索引ALTERTABLEseckill_orderADDINDEXidx_status(status);ALTERTABLEseckill_orderADDINDEXidx_user_id(user_id);-- 联合索引ALTERTABLEseckill_orderADDINDEXidx_user_status(user_id,status);-- 覆盖索引查询SELECTuser_id,statusFROMseckill_orderWHEREuser_id=1001;-- 上面的查询只从索引取数据,不需要回表

💡 觉得有用的话,点赞 + 关注【张老师技术栈】吧!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/23 14:16:29

高手制造视频经验直接复用!2026年支持Skill的AI视频生成工具推荐榜!

过去一年,AI 视频的画质越来越精致,镜头也越来越有电影感,但真正做过项目的人都知道:能生成一条好看的视频,和能持续稳定完成一条可交付的视频,完全是两回事。很多创作者都会遇到类似的问题。刷到一条效果惊…

作者头像 李华
网站建设 2026/7/23 14:14:52

鸿蒙三方库 | harmony-utils之ImageUtil ImageSource创建与打包详解

前言 ImageSource是HarmonyOS图片解码的入口对象,用于从文件、缓冲区等创建图片数据源。pura/harmony-utils 的 ImageUtil 封装了ImageSource创建方法,简化了图片数据源的创建流程。本文将从API说明、代码实战、进阶用法、常见问题等多个维度进行全面讲解…

作者头像 李华
网站建设 2026/7/23 14:14:37

技术项目标题与描述编写规范:提升代码可维护性与团队协作效率

最近在技术社区里,一个看似简单但实际影响深远的问题频繁出现:很多开发者,特别是刚接触企业级应用开发的同学,在配置项目时往往只关注功能实现,却忽略了标题和元信息这些"门面"工作的重要性。结果就是&#…

作者头像 李华
网站建设 2026/7/23 14:10:53

运动耳机怎么选不踩坑?十款热门运动耳机评测,找到你的专属搭档

户外跑步、骑行、健身房高强度训练,对运动蓝牙耳机的要求远高于日常使用——既要稳固不掉,又要防水防汗,还要兼顾音质和续航。但不少机型看似主打运动,实际使用中却频频掉链子:跑步时滑落、出汗后失灵、续航撑不完一场…

作者头像 李华
网站建设 2026/7/23 14:09:20

Unity XR交互冲突解决:Direct与Ray交互器层级隔离与仲裁策略

1. 项目概述:从一次恼人的交互Bug说起 如果你正在开发Unity XR应用,并且同时使用了Direct Interactor(直接交互器)和Ray Interactor(射线交互器),那么你很可能遇到过这样的场景:你的…

作者头像 李华
网站建设 2026/7/23 14:09:14

Unity WebGL部署Tomcat全攻略:MIME类型、CORS与性能调优

1. 项目概述:从Unity WebGL到Tomcat的部署鸿沟 如果你是一名Unity开发者,最近想把一个精心打磨的3D项目发布到网页上,让用户无需下载就能体验,那么你大概率已经和WebGL构建目标打过交道了。Unity的WebGL导出功能确实强大&#xff…

作者头像 李华