MySQL优化 - 开启MySQL慢查询日志及分析工具mysqldumpslow

  1. 云栖社区>
  2. 博客>
  3. 正文

MySQL优化 - 开启MySQL慢查询日志及分析工具mysqldumpslow

李博 bluemind 2017-12-09 06:47:00 浏览1139
展开阅读全文

1.  启用MySQL的慢查询日志很简单,只需在MySQL的配置文件my.cnf里添加: 

[mysqld]
slow_query_log=1  - 开启慢查询日志 
slow_query_log_file=/data01/mysqldata/3306/slow_query.log-- 慢查询日志存放位置,因需要可写,一般是数据存放目录
long_query_time=10   单位秒, 默认为10,表示超过10秒的才记录  
slow_launch_time=2 - 表示如果建立线程花费了比这个值更长的时间,slow_launch_threads 计数器将增加
log_queries_not_using_indexes=OFF   -- 设置为ON表示记录没有使用index的查询,默认没有开启  
备注: 通过 show global status like '%slow%'; 来查看 slow_launch_threads 计数器。 
2.  设置时间:
mysql > set long_query_time=5 ; 
mysql > show variables like 'long%';  
3.  慢查询日志分析工具mysqldumpslow 。 
如果慢查询日志中记录内容很多,可以使用mysqldumpslow工具(MySQL客户端安装自带)来对慢查询日志进行分类汇总。mysqldumpslow对日志文件进行了分类汇总,显示汇总后摘要结果。
$ mysqldumpslow -s t -t 10 -g "left join"  /data01/mysqldata/3306/slow_query.log
得到按照时间排序的前10条里面含有左连接的查询语句。
使用mysqldumpslow命令可以非常明确的得到各种我们需要的查询语句,对MySQL查询语句的监控、分析、优化是MySQL优化非常重要的一步。开启慢查询日志后,由于日志记录操作,在一定程度上会占用CPU资源影响mysql的性能,但是可以阶段性开启来定位性能瓶颈。
本文转自ITPUB博客tolywang的博客,原文链接:MySQL优化 - 开启MySQL慢查询日志及分析工具mysqldumpslow,如需转载请自行联系原博主。

网友评论

登录后评论
0/500
评论
李博 bluemind
+ 关注