下载:http://hackmysql.com/mysqlsla
tar xzvf mysqlsla-2.03.tar.gz
cd mysqlsla-2.03
perl Makefile.PL
make
make install
默认将命令mysqlsla安装到/usr/bin目录
第一次通过CPAN安装perl模块时,需要进行相关的配置,大部分配置采用默认值,一路回车即可
#perl -MCPAN -e shell
然后执行下面的命令保存
CPAN>reload index
CPAN>reload cpan
安装DBI模块
CPAN>install DBI
使用:
1、连接mysql需要具有root@localhost权限,赋予相应权限grant all on *.* to root@localhost identified by '123456'
2、开启 MySQL Server 的 General Log 与 Slow Log
/etc/my.cnf:
[mysqld]
log=general-log
log-slow-queries=slow-log
3、以 mysqlsla 分析 Log 档案
mysqlsla 其实是一支 Perl Scripts,使用方式很间单,语法如下:
A. 分析 General Log
mysqlsla -lt slow slow.log -R print-unique -mf "db=foo" -sf "+SELECT"
然后您就可以大致上了解 Server 都在处理些什么东西。
B. 分析 Slow Log
引用:
mysqlsla --user=root --password=xxxxx -ex --socket=/tmp/mysql.sock -lt slow slow.log
mysqlsla --user=root --password=xxxxx -ex --socket=/tmp/mysql.sock -lt general /data/mysql/test.log
引用:
--slow: 表示要分析的是 Slow Log
--ex: 使用 EXPLAIN 分析 Query
--db 数据库名称:Slow Log 不一定会记录 Query 所属的 Database,这样一来当 Server 要进行 EXPLAIN 时会有问题,因此在这里我们自己指定所使用的 Database。
slow-log: 这里要填入 slow-log 文件名称,若有多个 Log 档案请使用逗号分隔,例如 log1,log2...。
所产生的范例报表:(mysqlsla 预设只会列出 Top 10 Query)