mysql pt_MySQL运行状态监控(pt-mysql-summary)

pt-MySQL-summary也是percona-toolkit-2.2.8-1.noarch.rpm工具集的一部分。

安装工具集请参考: http://www.linuxidc.com/Linux/2014-07/104034.htm

MySQL的show status命令 仅仅是一个状态的计数器。

通常情况下,需要采集一个间隔的show status命令,然后分析它的趋势。

一定时间间隔的采集可以使用mysqladmin extended-status

但是更简单的方法是使用pt-mysql-summary工具。

关于pt-mysql-summary工具的介绍请参考: http://www.linuxidc.com/Linux/2014-08/104929.htm

下面的脚本通过一个时间间隔的状态采集,

得到这个间隔的增、删、改、查、提交、回滚的总数,然后通过gnuplot画图工具,绘制出图形。

脚本如下(Probe.sh):

#!/bin/bash

#采集间隔时间,单位s

asleep=10

user=root

password=root

probe_file=probe.log

output_image=/tmp/probe.png

while [ 1 ] ; do

a=$(pt-mysql-summary --user $user --password $password | grep -i "com_insert\|com_delete\|com_update\|com_select\|com_commit\|com_rollback" | awk    '{if(length($4)==0) print 0 ;else print $4}' | tr -t '\n' ' '); echo $(date "+%Y-%m-%d_%H:%M:%S") $a >> $probe_file

gnuplot -e "set terminal png size 3000,1000 ; set size ratio 0.9 ; set output '$output_image' ; set xtic rotate by 90 ; set xdata time ; set grid;set    timefmt '%Y-%m-%d_%H:%M:%S' ; plot 'probe.log' using 1:2 with line title 'Commit', 'probe.log' using 1:3 with line title 'Delete', 'probe.log' using    1:4 with line title 'insert','probe.log' using 1:5 with line title 'rollback','probe.log' using 1:6 with line title 'select','probe.log' using 1:7 with    line title 'update' ; "

done;

86a8e757d9fff3103f6ccc9a4f8a27d0.png

Gnuplot

set size ratio 0.9        Y轴:X轴 的比值

set xtic rotate by 90    X轴的文字旋转90度

0b1331709591d260c1c78e86d0c51c18.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值