安装mysqlsla
源码路径:https://github.com/daniel-nichter/hackmysql.com
源码存放路径:/usr/local/src
1、获取源码
如果没有git命令,请先安装git
yum -y install git

yum -y install perl-ExtUtils-Embed

cd /usr/local/src

git clone https://github.com/daniel-nichter/hackmysql.com.git

mkdir -p /opt/monitorMySQL

cp -Rf hackmysql.com /opt

cd /opt/hackmysql.com

cp -Rf . /opt/monitorMySQL

rm -rf hackmysql.com

cd /opt/monitorMySQL/mysqlsla

perl Makefile.PL

make && make install
结果:

cp lib/mysqlsla.pm blib/lib/mysqlsla.pm
cp bin/mysqlsla blib/script/mysqlsla
/usr/bin/perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/mysqlsla
Manifying blib/man3/mysqlsla.3pm
Installing /usr/local/share/perl5/mysqlsla.pm
Installing /usr/local/share/man/man3/mysqlsla.3pm
Installing /usr/local/bin/mysqlsla
Appending installation info to /usr/lib64/perl5/perllocal.pod

2、安装其他包
yum -y install perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker perl-Time-HiRes perl-DBI perl-DBD-MySQL

列出本次安装包
yum list perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker perl-Time-HiRes perl-DBI perl-DBD-MySQL

lt:表示日志类型,有slow, general, binary, msl, udl。
sf:[+-][TYPE],[TYPE]有SELECT, CREATE, DROP, UPDATE, INSERT,例如”+SELECT,INSERT”,不出现的默认是-,即不包括。
db:要处理哪个库的日志。
top:表示取按规则排序的前多少条。
sort:按某种规则排序,t_sum:按总时间排序;c_sum:按总次数排序;c_sum_p: sql语句执行次数占总执行次数的百分比。

#开启慢查询日志项配置

参考文件mysql性能优化之优化配置my.cnf文件:http://www.cnblogs.com/NiceTime/p/6848132.html

slow_query_log_file=/opt/mysql/data/slow.log 需根据你安装的mysql慢查询日志路径为准。

#执行时间最长的20条sql语句(默认按时长)
[root@localhost mysqllog]# mysqlsla -lt slow --sort t_sum --top 20 /opt/mysql/data/slow.log

#统计慢查询文件中所有select的慢查询sql,并显示执行时间最长的20条sql语句
[root@localhost mysqllog]# mysqlsla -lt slow -sf "+select" -top 20 /opt/mysql/data/slow.log

#统计慢查询文件中的数据库为test的所有select和update的慢查询sql,并查询次数最多的20条sql语句,并写到sql_num.log中
[root@localhost mysqllog]# mysqlsla -lt slow -sf "+select,update" -top 20 -sort c_sum -db test /opt/mysql/data/slow.log >/usr/local/src/slow_ip_db_yymm.log

mysqlsla -lt slow -sf "+select,insert,update,delete" -top 10 -sort t_sum -db tps138_com /tmp/logs/mysql-slow.log >/usr/local/src/slow_112_tps138_com_080901.log

#mysqlsla输出格式说明:
queries total: 总查询次数,unique: 去重后的sql数量
Sorted by: 输出报表的内容排序
Count : sql的执行次数及占总的slow log数量的百分比
Time : 执行时间, 包括总时间, 平均时间, 最小, 最大时间, 时间占到总慢sql时间的百分比
95% of Time : 去除最快和最慢的sql, 覆盖率占95%的sql的执行时间
Lock Time : 等待锁的时间
95% of Lock : 95%的慢sql等待锁时间
Rows sent : 结果行统计数量, 包括平均, 最小, 最大数量
Rows examined : 扫描的行数量
Database : 属于哪个数据库
Users : 哪个用户,IP,占到所有用户执行的sql百分比
Query abstract: 抽象后的sql语句
Query sample : sql样例语句

#如果出现该问题
failed: Access denied for user 'root'@'192.168.64.129' (using password: YES) at ./mysqlreport line 249

可先在配置文件
/etc/my.cnf中
[client]
host=localhost
user=xxx
password=xxx

重启数据库后
在执行该语句
mysql>INSERT INTO `user` VALUES ('%','root','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'mysql_native_password','*6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9','N',LOCALTIME(),NULL,'N');
mysql>fulsh privileges;

之后再注释以下配置项
/etc/my.cnf中
[client]
host=localhost
user=xxxm
password=xxx

./mysqlsla -lt slow -sf "+select,update,delete,insert" -top 10 -sort t_sum -db tps138 /data/mysql3306/data/slow.log

然后再执行
cd /opt/monitorMySQL/mysqlreport

#本地直播APP
./mysqlreport --host 192.168.1.1 --user root --password 123456 --port 3306 --flush-status --no-mycnf --outfile /usr/local/src/mysqlreport_1.csv

mysqlsla安装和使用介绍的更多相关文章

  1. 树莓派2系统DietPi简单安装配置使用介绍

    DietPi在Raspberrypi.org上的原帖:http://dwz.cn/HSrmY 版本发布很频繁,给原作者们点个赞.功能会越来越多,而且作者的定制观点很明确,适合树莓派的使用. 之前关于D ...

  2. [Python爬虫] scrapy爬虫系列 <一>.安装及入门介绍

    前面介绍了很多Selenium基于自动测试的Python爬虫程序,主要利用它的xpath语句,通过分析网页DOM树结构进行爬取内容,同时可以结合Phantomjs模拟浏览器进行鼠标或键盘操作.但是,更 ...

  3. Windows Server 2016 + SCO 2016 安装及配置介绍

    Windows Server 2016 + SCO 2016 安装及配置介绍 高文龙关注1人评论6332人阅读2017-02-26 23:23:02 Windows Server 2016 + SCO ...

  4. Centos 7.3下 Linux For SQL Server安装及配置介绍

    Centos 7.3下 Linux For SQL Server安装及配置介绍 高文龙关注13人评论2828人阅读2017-03-05 21:46:21 Centos 7.3下Linux For SQ ...

  5. Browser-Solidity的本地安装及使用介绍

    Browser-Solidity的本地安装及使用介绍 正所谓工欲善其事必先利其器,巧妇也难为无米之炊,所以在学习智能合约之前,必须要先把工具准备好.Browser-Solidity 是 Ethereu ...

  6. laravel基础课程---1、laravel安装及基础介绍(laravel如何安装)

    laravel基础课程---1.laravel安装及基础介绍(laravel如何安装) 一.总结 一句话总结: [修改composer镜像地址].[明确laravel的安装要求].[安装指定版本的la ...

  7. CocoaPods 的安装和使用介绍

    CocoaPods 的安装和使用介绍 安装 安装方式异常简单 , Mac 下都自带 ruby,使用 ruby 的 gem 命令即可下载安装: 1 2 $ sudo gem install cocoap ...

  8. JavaWeb——tomcat安装及目录介绍

    一.web web可以说,就是一套 请求->处理->响应 的流程.客户端使用浏览器(IE.FireFox等),通过网络(Network)连接到服务器上,使用HTTP协议发起请求(Reque ...

  9. Linux下MySQL慢查询分析mysqlsla安装使用

    说明: 操作系统:CentOS 5.X 64位 MySQL版本:mysql-5.5.35 MySQL配置文件:/etc/my.cnf MySQL 数据库存放目录:/data/mysql 实现目的:开启 ...

随机推荐

  1. office2007下载地址

    thunder://QUFodHRwOi8vNDYuZHVvdGUub3JnOjgwODAvb2ZmaWNlMjAwN3Byby56aXBaWg==thunder://QUFodHRwOi8vNTEu ...

  2. SSAS GUID 添加 行计数,非重复计数 等 遇到的莫名其妙的问题

    在基于某个GUID 进行非重复性计数时 需要对GUID 转换类型,如:CAST(ColumnName as varchar(36)) 可参考:http://stackoverflow.com/ques ...

  3. A - Set of Strings

    Time Limit:1000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u Description You ar ...

  4. codevs-1203

    1203 判断浮点数是否相等 题目描述 Description 给出两个浮点数,请你判断这两个浮点数是否相等   输入描述 Input Description 输入仅一行,包含两个浮点数   输出描述 ...

  5. 第三篇:SpringBoot用JdbcTemplates访问Mysql

    本文介绍springboot通过jdbc访问关系型mysql,通过spring的JdbcTemplate去访问. 准备工作 jdk 1.8 maven 3.0 idea mysql 初始化mysql: ...

  6. TypeScript完全解读(26课时)_20.声明文件

    首先学习识别已有的js库的类型 识别已有的js库的类型 UMD既可以作为全局库使用,也可以作为模块使用 先在着手来编写一个全局的库 新建文件 接收一个title,改变页面title的值 这里用到 &a ...

  7. PHP文件操作的经典案例

    <?php /* 遍历目录函数,只读取目录的最外层的内容 */ function readDirectory($path){ $handle = opendir($path); while(($ ...

  8. Spring中配置Dbutils

    <!--配置QueryRunner--> <bean id="runner" class="org.apache.commons.dbutils.Que ...

  9. Codeforces Round #439 (Div. 2)C - The Intriguing Obsession(简单dp)

    传送门 题意 给出三个集合,每个集合的元素数量为a,b,c,现在需要连边,满足集合内元素不可达或最短路为3,求可行方案数 分析 设dp[i][j]为a集合元素为i个,b集合元素为j个的可行方案,易知( ...

  10. Pro Android学习笔记(一五四):传感器(4):陀螺仪、加速传感器

    文章转载只能用于非商业性质,且不能带有虚拟货币.积分.注册等附加条件.转载须注明出处http://blog.csdn.net/flowingflying/以及作者@恺风Wei. 陀螺仪 陀螺仪(Gyr ...