慢查询配置

慢查询定义及作用:

慢查询日志,顾名思义,就是查询慢的日志,是指mysql记录所有执行超过long_query_time参数设定的时间阈值的SQL语句的日志。该日志能为SQL语句的优化带来很好的帮助。默认情况下,慢查询日志是关闭的,要使用慢查询日志功能,首先要开启慢查询日志功能。

慢查询的常用配置:
  • slow_query_log:启动停止技术慢查询日志;
  • slow_query_log_file:指定慢查询日志得存储路径及文件(默认和数据文件放一起);
  • long_query_time:指定记录慢查询日志SQL执行时间得伐值(单位:秒,默认10秒);
  • log_queries_not_using_indexes:是否记录未使用索引的SQL;
  • log_output:日志存放的地方,支持【TABLE】【FILE】和【FILE,TABLE】。
设置的命令包括:

show VARIABLES like ‘%slow_query_log%’;
show VARIABLES like ‘%slow_query_log_file%’;
show VARIABLES like ‘%long_query_time%’;
show VARIABLES like ‘%log_queries_not_using_indexes%’;
show VARIABLES like ‘log_output’;
set global long_query_time=0;
set GLOBAL slow_query_log = 1;
set global log_output=’FILE,TABLE’;

记录符合条件的SQL,包括:
  • 查询语句;
  • 修改语句;
  • 回滚的SQL。
慢查询日志解析:

![image-20201229121051912](2020-12-29 01-慢查询配置.assets/image-20201229121051912.png)

行号 内容
1 用户名 、用户的IP信息、线程ID号
2 执行花费的时间【单位:毫秒】
3 执行获得锁的时间
4 获得的结果行数
5 扫描的数据行数
6 这SQL执行的具体时间
7 具体的SQL语句