MySQL:慢日志:如何开启慢日志?如何分析?

MySql:慢日志:如何开启慢日志?如何分析?
一、MySQL如何开启 慢查询?
1、修改配置文件,开启慢日志
Window:my.ini
Linux:my.cnf
添加配置:
#定义慢查询日志的路径:
log-slow-queries=xxx/mysql_slow_query.log

#来定义查过多少秒的查询算是慢查询
long_query_time=5

2、验证mysql慢查询是否开启
show variables like ‘%slow%’;
执行结果会把是否开启慢查询、慢查询的秒数、慢查询日志等信息。

二、模拟慢查询
可以通过如下语句模拟:
SELECT SLEEP(10);

三、分析慢日志
1、查看慢查询的数量通过如下sql语句,来查看一共执行过几次慢查询:
show global status like ‘%slow%’;

2、获取、分析慢日志文件
mysqldumpslow 慢日志分析工具命令:
-s:按照那种方式排序
c:访问计数
l:锁定时间
r:返回记录
al:平均锁定时间
ar:平均访问记录数
at:平均查询时间
-t:top n,也就是返回前n条数据
-g:正则匹配模式

得到返回记录最多的20个:
sqlmysqldumpslow -s r -t 20 sqlslow.log

得到平均访问次数最多的20条:
sqlmysqldumpslow -s ar -t 20 sqlslow.log

得到平均访问次数最多,并且里面含有 xxx字符的20条sqlmysqldumpslow -s ar -t 20 -g “xxx” sqldlow.log
注:
1、如果出现 -bash: mysqldumpslow: command not found 错误,请执行ln -s /usr/local/mysql/bin/mysqldumpslow /usr/bin

2、如果出现如下错误,Died at /usr/bin/mysqldumpslow line 161, <> chunk 405659.说明你要分析的sql日志太大了,请拆分后再分析
拆分的命令为:tail -100000 x.log>x.log

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值