MySQL慢查询mysqlsla

转:http://www.osyunwei.com/archives/7659.html

必须在MySQL服务器上安装mysqlsla

1、mysqlsla是perl编写的脚本,运行mysqlsla需要perl-DBI和per-DBD-Mysql两模块的支持,因此在运行mysqlsla前需要首先安装DBI模块和相应的数据库DBD驱动,而默认情况下linux不安装这两个模块,需要自行下载安装,

yum -y install wget perl perl-DBI perl-DBD-MySQL (mysql) --执行此命令安装依赖包

2、安装mysqlsla

cd /data #进入软件包存放目录
wget http://hackmysql.com/scripts/mysqlsla-2.03.tar.gz  #下载mysqlsla
tar zxvf mysqlsla-2.03.tar.gz --解压 cd mysqlsla-2.03 --进入安装目录

perl Makefile.PL  --配置
make  --编译
make install  --安装

3、使用mysqlsla分析MySQL慢查询日志

#查询记录最多的20个sql语句,并写到select.log中去
mysqlsla -lt slow --sort t_sum --top 20  /data/mysql/127-slow.log >/tmp/select.log
#统计慢查询文件为/data/mysql/127-slow.log的所有select的慢查询sql,并显示执行时间最长的100条sql,并写到sql_select.log中去
mysqlsla -lt slow  -sf "+select" -top 100  /data/mysql/127-slow.log >/tmp/sql_select.log
#统计慢查询文件为/data/mysql/127-slow.log的数据库为mydata的所有select和update的慢查询sql,并查询次数最多的100条sql,并写到sql_num.sql中去
mysqlsla -lt slow  -sf "+select,update" -top 100 -sort c_sum  -db mydata /data/mysql/127-slow.log >/tmp/sql_num.log

 

posted @ 2016-01-21 14:29  —八戒—  阅读(823)  评论(0编辑  收藏  举报