anemometer mysql_使用Anemometer分析MySQL慢查询记录
数据库管理员一般是用percona的toolkit工具来分析MySQL慢查询记录,但是不够直观。
下面介绍一款比较直观的工具来统计分析MySQL慢查询记录anemometer。
在使用之前需要安装percona的toolkit工具,anemometer提供web界面。
anemometer介绍参见:https://github.com/box/Anemometer/wiki
1. 安装
# cd /data/www/my.ttlsa.com
# git clone https://github.com/box/Anemometer.git anemometer
# cd anemometer
1
2
3
# cd /data/www/my.ttlsa.com
# git clone https://github.com/box/Anemometer.git anemometer
# cd anemometer
2. 创建表和用户名
mysql < install.sql
mysql -e "grant ALL ON slow_query_log.* to 'anemometer'@'localhost' IDENTIFIED BY 'my.ttlsa.com';"
mysql -e "grant SELECT ON *.* to 'anemometer'@'localhost' IDENTIFIED BY 'my.ttlsa.com';"
1
2
3
mysql
mysql-e"grant ALL ON slow_query_log.* to 'anemometer'@'localhost' IDENTIFIED BY 'my.ttlsa.com';"
mysql-e"grant SELECT ON *.* to 'anemometer'@'localhost' IDENTIFIED BY 'my.ttlsa.com';"
3. 分析MySQL慢日志
# pt-query-digest --user=anemometer --password=superSecurePass \
--review D=slow_query_log,t=global_query_review \
--review-history D=slow_query_log,t=global_query_review_history \
--no-report --limit=0% --filter=" \$event->{Bytes} = length(\$event->{arg}) and \$event->{hostname}=\"$HOSTNAME\"" /data/log/mysql/slow.log
1
2
3
4
# pt-query-digest --user=anemometer --password=superSecurePass \
--reviewD=slow_query_log,t=global_query_review\
--review-historyD=slow_query_log,t=global_query_review_history\
--no-report--limit=0%--filter=" \$event->{Bytes} = length(\$event->{arg}) and \$event->{hostname}=\"$HOSTNAME\""/data/log/mysql/slow.log
4. 配置anemometer
# cp conf/sample.config.inc.php conf/config.inc.php
# vi conf/config.inc.php
$conf['datasources']['localhost'] = array(
'host' => 'localhost',
'port' => 3306,
'db' => 'slow_query_log',
'user' => 'anemometer',
'password' => 'my.ttlsa.com',
'tables' => array(
'global_query_review' => 'fact',
'global_query_review_history' => 'dimension'
),
'source_type' => 'slow_query_log'
);
$conf['plugins'] = array(
'visual_explain' => '/usr/bin/pt-visual-explain',
'query_advisor' => '/usr/bin/pt-query-advisor',
#... other lines
$conn['user'] = 'anemometer';
$conn['password'] = 'my.ttlsa.com';
return $conn;
},
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# cp conf/sample.config.inc.php conf/config.inc.php
# vi conf/config.inc.php
$conf['datasources']['localhost']=array(
'host'=>'localhost',
'port'=>3306,
'db'=>'slow_query_log',
'user'=>'anemometer',
'password'=>'my.ttlsa.com',
'tables'=>array(
'global_query_review'=>'fact',
'global_query_review_history'=>'dimension'
),
'source_type'=>'slow_query_log'
);
$conf['plugins']=array(
'visual_explain'=>'/usr/bin/pt-visual-explain',
'query_advisor'=>'/usr/bin/pt-query-advisor',
#... other lines
$conn['user']='anemometer';
$conn['password']='my.ttlsa.com';
return$conn;
},
5. 自动化处理
# vi /etc/logrotate.d/mysql
postrotate
pt-query-digest --user=anemometer --password=superSecurePass \
--review D=slow_query_log,t=global_query_review \
--review-history D=slow_query_log,t=global_query_review_history \
--no-report --limit=0% --filter=" \$event->{Bytes} = length(\$event->{arg}) and \$event->{hostname}=\"$HOSTNAME\"" /data/log/mysql/slow.log.1
endscript
1
2
3
4
5
6
7
# vi /etc/logrotate.d/mysql
postrotate
pt-query-digest--user=anemometer--password=superSecurePass\
--reviewD=slow_query_log,t=global_query_review\
--review-historyD=slow_query_log,t=global_query_review_history\
--no-report--limit=0%--filter=" \$event->{Bytes} = length(\$event->{arg}) and \$event->{hostname}=\"$HOSTNAME\""/data/log/mysql/slow.log.1
endscript
这样就可以通过my.ttlsa.com/anemometer来访问查看慢查询了。
参考文档:
https://www.box.com/blog/optimizing-mysql-performance-at-scale-with-anemometer-2/
http://isadba.com/?p=655
anemometer mysql_使用Anemometer分析MySQL慢查询记录相关推荐
- mysql慢查询记录到表_MySQL慢查询记录原理和内容解析
原标题:MySQL慢查询记录原理和内容解析 作者:高鹏(网名八怪),<深入理解MySQL主从原理32讲>系列文的作者. 本文为学习记录,可能有误请谅解,也提供了一些源码接口供有兴趣的朋友调 ...
- anemometer mysql_使用Anemometer基于pt-query-digest将MySQL慢查询可视化
最近玩MySQL,发现了一个很不错的工具,可以把MySQL慢查询可视化,方便我们去找出和分析慢询语句,搭建的步骤不多,但网上详细教程比较少,说得也不够详细,一不小心,估计得蛋痛一会,哈哈 Percon ...
- 分析mysql慢查询_mysql慢查询的分析方法_MySQL
本文主要介绍的是MySQL慢查询分析方法,前一段日子,我曾经设置了一次记录在MySQL数据库中对慢于1秒钟的SQL语句进行查询.想起来有几个十分设置的方法,有几个参数的名称死活回忆不起来了,于是重新整 ...
- 使用mysqldumpslow和mysqlsla分析mysql慢查询日志
MySQL优化不是一劳永逸的工作,而是一个持久战.其中慢查询日志的分析是一个重要手段,以前我总是手动大概看看,不过这实在不是长久之计,今天试用了一下mysqldumpslow和mysqlsla,感觉效 ...
- 使用ELK分析Mysql慢查询日志
目录 1.ELK介绍 2.ELK安装及问题解决 3.架构 4.Mysql慢查询配置 5.具体分析 6.参考资料 1.ELK介绍 1)Elasticsearch Elasticsearch 是基于 JS ...
- MySQL慢查询记录原理和内容解析
点击上方"朱小厮的博客",选择"设为星标" 后台回复"书",获取 后台回复"k8s",可领取k8s资料 本文并不准备说明 ...
- MYSQL获得查询记录的行号
对于获得查询记录的行号这一功能,Oracle 中可以使用标准方法(8i版本以上),也可以使用非标准的ROWNUM,MS SQL Server 则在 2005 版本中提供了ROW_NUMBER()函数. ...
- shell脚本分析mysql慢查询日志(slow log)
使用percona公司的pt-query-digest分析慢查询日志.分析.统计的结果的比較清晰 #!/bin/sh slowlog_path=/root/slow_query_log everysl ...
- 使用MyBatis框架连接MySQL数据库查询记录,全部步骤
系统:Windows 10 ×64 使用软件:eclipse IDE.Navicat Premiun 12.MySQL 5.7 1.在Eclipse IDE中创建Java project 2.配置JA ...
最新文章
- 独家 | 送你5本机器学习必备的免费电子书!(附链接)
- [动漫日语每天一句]01 没什么大不了的。
- 干货!高容错微服务架构设计思路
- 学数答题160909-取整函数
- 题目1255:骰子点数概率(动态规划)
- Windows Server 2008 R2 DNS 服务器迁移方法
- Saltstack-6:模块
- 我是一位老师,讲课是我的乐趣,可是……
- centos7安装php8,centos8安装php7.4
- Ubuntu麒麟下搭建FTP服务
- Win7系统打开网页特别慢的解决方法
- java 类编译_Java类编译、加载、和执行机制
- 蓝桥杯2020年第十一届Python省赛第五题-排序
- android 地理位置改变,Android中修改地理位置信息
- Windows用户如何安装使用cpolar内网穿透工具
- NTP/PTP时间同步入门
- 2019年入职体检那些事
- 《软件架构/架构师书库》读后感
- Halcon仿射变换图片(旋转、缩放、平移)
- Pikachu漏洞平台练习