1.定位,根据sql慢日志定位查询慢sql.
show variables like ‘%quer%’
重点关注一下三个查询结果:
show_query_log :off/on 是否展示慢日志
slow_query_log_file 慢日志存放路径
long_query_time 定义为慢查询的时间
show status like ‘%quer%’ 慢查询的条数
2.借助explain等工具分析sql。
explain select name from person order by name desc
关注点1:id
在联合查询语句中,id的数值越大,执行优先级越高。
type :mysql找到数据行的方式,性能由高到低为:


3.修改sql语句或者尽量让sql语句走索引
查看表结构,查看当前索引,借助explain,KEY的结果表示为,当前语句借助的索引。
为当前语句添加索引,alter table person add index idx_name(name)
使用强制索引比较各个索引下的执行时间;在具体分析考虑如何使用索引
select name from person force index (primary)
SQL性能优化指南
本文详细介绍如何通过分析慢日志、使用explain工具及合理利用索引来优化SQL查询性能。首先,通过慢日志定位慢查询,关注慢日志的开启状态、文件路径及慢查询阈值。其次,利用explain分析SQL执行计划,理解id和type字段的意义,从而判断查询效率。最后,通过创建或优化索引,如使用ALTER TABLE添加索引或FORCE INDEX指定索引,进一步提升查询速度。
444

被折叠的 条评论
为什么被折叠?



