-
根据慢日志定位慢查询SQL。
查询慢日志相关变量,并进行设置:
主要关注下述三个变量:
long_query_time、show_query_log_file、show_query_log
慢查询sql会被记录到show_query_log_file 日志文件中。
show variables like '%quer%'; -- 查询相关变量
show status like '%show_queries%'; -- 统计慢查询数量
-
使用explain等工具分析SQL。
explain 关键字段:
- type 表示mysql 找到数据行的方式,性能从最优到最差排列如下截图:
一般出现下述红色字体的类型说明需要对SQL进行优化了。
- extra
-
修改sql或者尽量让sql走索引。
-
在合适的场景中自行选择需要走那些索引
force index ...
示例:
select count(id) from person_info_large force index(primary);