MySQL慢查询日志

时间:2021-06-29 02:34:20

实验环境:
OS X EI Captian + MySQL 5.7

一、配置MySQL自动记录慢查询日志

查看变量,也就是配置信息

show (global) variables like '%slow_query%'

修改变量:

set global 变量名 = 值

与慢查询日志有关的变量:

是否开启慢查询日志
slow_query_log = OFF long_query_time = 10
最大时间限制,超过此时间,再记录 slow_query_log_file = /usr/slow.log
日志文件位置 log_queries_not_using_indexes = OFF
没有使用索引的搜索是否记录

我们先开启慢查询日志:

MySQL慢查询日志

修改查询时间:

MySQL慢查询日志

剩下两个全局变量,日志路径和没用索引的记录就默认值吧。

二、查看MySQL慢查询日志

可以直接查看:

vim /usr/local/var/mysql/DyanLideMacBook-Air-slow.log

MySQL慢查询日志

也可以使用mysqldumpslow查看慢查询日志:

mysqldumpslow -s at -a  /usr/local/var/mysql/DyanLideMacBook-Air-slow.log

查看帮助 mysqldumpslow --help

MySQL慢查询日志

翻译几个常用的:

--verbose    版本
--debug 调试
--help 帮助 -v 版本
-d 调试模式
-s ORDER 排序方式
al: average lock time
ar: average rows sent
at: average query time 默认
c: count
l: lock time
r: rows sent
t: query time
-r 反转顺序,默认文件倒序拍
-t NUM 显示前N条
-a 不要将SQL中数字转换成N,字符串转换成S
-l 总时间中不减去锁定时间