MySQL慢查询日志
Posted Amazing Code!
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL慢查询日志相关的知识,希望对你有一定的参考价值。
实验环境:
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慢查询日志
可以直接查看:
vim /usr/local/var/mysql/DyanLideMacBook-Air-slow.log

也可以使用mysqldumpslow
查看慢查询日志:
mysqldumpslow -s at -a /usr/local/var/mysql/DyanLideMacBook-Air-slow.log
查看帮助 mysqldumpslow --help
:

翻译几个常用的:
--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 总时间中不减去锁定时间
以上是关于MySQL慢查询日志的主要内容,如果未能解决你的问题,请参考以下文章