码迷,mamicode.com
首页 > 数据库 > 详细

MySQL之慢查询日志

时间:2018-11-21 21:00:05      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:image   query   建议   mysqld   查看命令   怎么   shadow   %s   vpd   

慢日志查询
概述:
在生产环境中,如果要手工分析日志、查找、分析SQL,显然是个体力活,MySQL提供了日志分析工具MySQLldumpslow
是什么?
技术分享图片

怎么玩?
技术分享图片
查看命令:show variables like ‘%slow_query_log%’;
show variables like ‘%slow_query_log%‘;
技术分享图片
技术分享图片

如何开启慢查询日志:命令:set global slow_query_log=1 开启慢查询日志
技术分享图片
技术分享图片

那么开启了慢查询日志后,什么样的SQL才会记录到慢日志里面呢??
技术分享图片
case(案例):
查看当前查询多少秒算慢
SHOW VARIABLES LIKE‘%long_query_time%‘;
如何设置慢的阙值时间
set global long_query_time=3;
为什么设置后看不出变化:此时需要重新连接或新开一个会话才能看到修改值。
show global variables like ‘long_query_time‘;

查看当前系统中有多少条慢查询记录
技术分享图片
具体配置
技术分享图片
日志分析工具MySQLdumpslow
查看MySQLldumpslow的帮助信息
技术分享图片
s:表示按照任何方式排序;
c:访问次数
l:锁定时间
r:返回记录
t:查询时间
al:平均锁定时间
ar:平均返回记录数
at:平均查询时间
t:即为返回前面多少条的数据
g:后边搭配,一个正则匹配模式,大小写不敏感

常用参考(例如:)
得到返回记录集最多的10个SQL
mysqldumpslow -s r -t 10 /var/lib/mysql/localhost-slow.log
得到访问次数最多的10个SQL
mysqldumpslow -s c -t 10 /var/lib/mysql/localhost-slow.log
得到按照时间排序的前10条里面含有左连接的查询语句
mysqldumpslow -s t -t 10 -g"left join" /var/lib/mysql/localhost-slow.log
另外建议在使用这些命令时结合 | 和more 使用,否则有可能出现爆屏情况
mysqldumpslow -s r -t 10 /var/lib/mysql/localhost-slow.log |more

MySQL之慢查询日志

标签:image   query   建议   mysqld   查看命令   怎么   shadow   %s   vpd   

原文地址:http://blog.51cto.com/14084624/2320072

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!