mysql mtop 使用_使用MySQLMTOP监控MySQL性能

一、服务器角色

服务器角色

172.18.35.29

10.160.22.14 (MySQL Master)

10.160.22.47 (MySQL Slave)

监控点

YES

NO

NO

被监控点

NO

YES

YES

=========================================================================================

二、慢查询配置

1、在被监控服务器安装如下组件

# tar xvzsf DBI-1.628.tar.gz

# cd DBI-1.628

# perl Makefile.PL

# make && make install

# tar xvzf DBD-mysql-4.024.tar.gz

# cd DBD-mysql-4.024

# perl Makefile.PL --mysql_config=/usr/local/mysql/bin/mysql_config --with-mysql=/usr/local/mysql

# make && make install

# tar xvzf IO-Socket-SSL-1.972.tar.gz

# cd IO-Socket-SSL-1.972

# perl Makefile.PL

# make && make install

# tar xvzf percona-toolkit-2.2.7.tar.gz

# cd percona-toolkit-2.2.7

# perl Makefile.PL

# make && make install

-----------------------------------------------------------------------------------------------------------------------------------------------

2、开启 MySQL 本身的慢查询功能

slow_query_log = 1

slow_query_log_file = /data/dbdata/slow_query.log

long_query_time = 1

-----------------------------------------------------------------------------------------------------------------------------------------------

3、在被监控服务器(10.160.22.14)上添加如下 crontab 项

00 * * * * /usr/bin/pt-query-digest --user=mtop_user --password=123456 --port=3306 --review h=172.18.35.29,D=mysqlmtop,t=mysql_slow_query_review_4 --history h=172.18.35.29,D=mysqlmtop,t=mysql_slow_query_review_history_4 --no-report --limit=0%/data/dbdata/slow_query.log >/dev/null 2>&1

-----------------------------------------------------------------------------------------------------------------------------------------------

4、在被监控服务器(0.160.22.47)上添加如下 crontab 项

00 * * * * /usr/bin/pt-query-digest --user=mtop_user --password=123456 --port=3306 --review h=172.18.35.29,D=mysqlmtop,t=mysql_slow_query_review_5 --history h=172.18.35.29,D=mysqlmtop,t=mysql_slow_query_review_history_5 --no-report --limit=0%/data/dbdata/slow_query.log >/dev/null 2>&1

以上数据表 mysql_slow_query_review、mysql_slow_query_review_history 的后缀为主机 ID,如图:

27e5bd4dfd0ae49d21e282617f4c6bb2.png

-----------------------------------------------------------------------------------------------------------------------------------------------

5、为被监控的服务器开启慢查询

458ab2bb10d1df29f18d448c725a772b.png

-----------------------------------------------------------------------------------------------------------------------------------------------

6、效果展示

c2772a3e9130115e511a6988082bbda2.png

=========================================================================================

三、工具组件配置

1、在被监控服务器(172.18.35.29)上添加如下 crontab 项

*/30 * * * * cd /usr/local/mysqlmtop; ./check_mysql_widget_bigtable.py >/dev/null 2>&1

*/1 * * * * cd /usr/local/mysqlmtop; ./check_mysql_widget_hit_rate.py >/dev/null 2>&1

*/1 * * * * cd /usr/local/mysqlmtop; ./check_mysql_widget_connect.py >/dev/null 2>&1

-----------------------------------------------------------------------------------------------------------------------------------------------

2、效果展示

add41714a7280d9e36512df58a252b8d.png

=========================================================================================

四、资源监控配置

1、被监控服务器上的设置

NET-SNMP服务安装(注意版本):

# tar xvzf net-snmp-5.3.2.tar.gz

# cd net-snmp-5.3.2

# ./configure --prefix=/usr/local/snmp \

--enable-mfd-rewrites \

--with-default-snmp-version="2" \

--with-sys-contact="lovezym5@qq.com" \

--with-sys-location="China" \

--with-logfile="/var/log/snmpd.log" \

--with-persistent-directory="/var/net-snmp"

# make && make install

# cp EXAMPLE.conf /usr/local/snmp/share/snmp/snmpd.conf

# vim /usr/local/snmp/share/snmp/snmpd.conf

com2sec notConfigUser  172.18.35.29      mysqlmtop

group notConfigGroup v1   notConfigUser

group notConfigGroup v2c  notConfigUser

group notConfigGroup usm  notConfigUser

view all    included  .1                               80

access  notConfigGroup ""      any       noauth    exact  all none none

......

服务启动:

# /usr/local/snmp/sbin/snmpd -c /usr/local/snmp/share/snmp/snmpd.conf

-----------------------------------------------------------------------------------------------------------------------------------------------

2、监控服务器上的设置

NET-SNMP服务安装:

# tar xvzf net-snmp-5.3.2.tar.gz

# cd net-snmp-5.3.2

# ./configure --prefix=/usr/local/snmp \

--enable-mfd-rewrites \

--with-default-snmp-version="2" \

--with-sys-contact="lovezym5@qq.com" \

--with-sys-location="China" \

--with-logfile="/var/log/snmpd.log" \

--with-persistent-directory="/var/net-snmp"

# make && make install

# cd /usr/local/mysqlmtop

# ln -s /usr/local/snmp/bin/snmpwalk /usr/bin/snmpwalk

# ln -s /usr/local/snmp/bin/snmpdf /usr/bin/snmpdf

# vim /usr/local/mysqlmtop/check_linux_resource.sh

host="172.18.35.29"

port="3306"

user="mtop_user"

password="123456"

dbname="mysqlmtop"

......

# vim /usr/local/mysqlmtop/etc/config.ini

[linux_server]

server_ip="10.160.22.14|10.160.22.47"

重启监控服务:

# mtopctl stop && mtopctl start

问题修正(否则无法获取内存信息):

# vim /usr/local/mysqlmtop/check_linux_resource.sh

totalmem=`/usr/bin/snmpdf -v1 -c mysqlmtop ${ip} | awk '/Real Memory/ {print $3}'`

usedmem=`/usr/bin/snmpdf -v1 -c mysqlmtop ${ip} | awk '/Real Memory/ {print $4}'`

crontab 内容添加:

*/1 * * * * cd /usr/local/mysqlmtop; ./check_linux_resource.py >/dev/null 2>&1

-----------------------------------------------------------------------------------------------------------------------------------------------

3、效果展示

2d0a1e41a5e3e299e7ce4eddc13d8e7d.png

其中服务器安装环境:

XAMPP+Python+MySQLdb

windows可直接执行:mtop.py运行数据采集服务。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值