共计 872 个字符,预计需要花费 3 分钟才能阅读完成。
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 的性能,但是可以阶段性开启来定位性能瓶颈。
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-05/131318.htm