这篇文章将为大家详细讲解有关MySQL监控工具中orzdba怎么安装,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。



安装 orzdba

代码SVN地址:http://code.taobao.org/p/orzdba/src/trunk/

说明:Perl脚本,用于对Linux主机和MySQL相关指标进行实时监控。

修改代码160行左右配置MySQL的相关验证信息,如username,password,host,port,sock等
安装tcprstat
安装orzdba_rt_depend_perl_module.tar.gz依赖包(version模块、Class-Data-Inheritable模块、Module-Build模块、File-Lockfile模块)


shell> grep -n 'my $MYSQL' orzdba

160:my $MYSQL = qq{mysql -s --skip-column-names -uroot -P$port };


shell> chmod +x orzdba


shell> ./orzdba --help


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

Info :

Created By zhuxu@taobao.com

Usage :

Command line options :


-h,--help Print Help Info.

-i,--interval Time(second) Interval. # 数据抓取间隔(秒)

-C,--count Times. # 抓取总次数

-t,--time Print The Current Time.

-nocolor Print NO Color.


-l,--load Print Load Info.

-c,--cpu Print Cpu Info.

-s,--swap Print Swap Info.

-d,--disk Print Disk Info.

-n,--net Print Net Info.


-P,--port Port number to use for mysql connection(default 3306).

-S,--socket Socket file to use for mysql connection.


-com Print MySQL Status(Com_select,Com_insert,Com_update,Com_delete).

-hit Print Innodb Hit%.

-innodb_rows Print Innodb Rows Status(Innodb_rows_inserted/updated/deleted/read).

-innodb_pages Print Innodb Buffer Pool Pages Status(Innodb_buffer_pool_pages_data/free/dirty/flushed)

-innodb_data Print Innodb Data Status(Innodb_data_reads/writes/read/written)

-innodb_log Print Innodb Log Status(Innodb_os_log_fsyncs/written)

-innodb_status Print Innodb Status from Command: 'Show Engine Innodb Status'

(history list/ log unflushed/uncheckpointed bytes/ read views/ queries inside/queued)

-T,--threads Print Threads Status(Threads_running,Threads_connected,Threads_created,Threads_cached).

-rt Print MySQL DB RT(us).

-B,--bytes Print Bytes received from/send to MySQL(Bytes_received,Bytes_sent).


-mysql Print MySQLInfo (include -t,-com,-hit,-T,-B).

-innodb Print InnodbInfo(include -t,-innodb_pages,-innodb_data,-innodb_log,-innodb_status)

-sys Print SysInfo (include -t,-l,-c,-s).

-lazy Print Info (include -t,-l,-c,-s,-com,-hit).


-L,--logfile Print to Logfile.

-logfile_by_day One day a logfile,the suffix of logfile is 'yyyy-mm-dd';

and is valid with -L.


Sample :

shell> nohup ./orzdba -lazy -d sda -C 5 -i 2 -L /tmp/orzdba.log > /dev/null 2>&1 &

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



查看Linux主机指标


shell> ./orzdba -sys -C 10 -i 1 -t -d sda


.=================================================.

| Welcome to use the orzdba tool ! |

| Yep...Chinese English~ |

'=============== Date : 2014-12-31 ==============='


HOST: rac3 IP: 127.0.0.1


-------- -----load-avg---- ---cpu-usage--- ---swap--- -------------------------io-usage-----------------------

time | 1m 5m 15m |usr sys idl iow| si so| r/s w/s rkB/s wkB/s queue await svctm %util|

02:14:13| 0.08 0.02 0.01| 0 0 100 0| 0 0| 0.3 0.3 7.7 2.7 0.0 6.0 2.0 0.1|

02:14:14| 0.08 0.02 0.01| 0 3 97 0| 0 0| 0.0 3.0 0.0 11.9 0.0 4.0 1.3 0.4|

02:14:15| 0.08 0.02 0.01| 0 3 97 0| 0 0| 0.0 6.7 0.0 30.5 0.0 2.1 0.7 0.5|

02:14:16| 0.08 0.02 0.01| 0 2 98 0| 0 0| 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0|

02:14:17| 0.08 0.02 0.01| 0 3 97 0| 0 0| 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0|

02:14:18| 0.07 0.02 0.00| 0 3 96 0| 0 0| 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0|

02:14:19| 0.07 0.02 0.00| 0 3 97 0| 0 0| 0.0 1.9 0.0 7.5 0.0 4.0 2.0 0.4|

02:14:20| 0.07 0.02 0.00| 0 4 96 0| 0 0| 0.0 5.0 0.0 51.7 0.0 0.8 0.4 0.2|

02:14:21| 0.07 0.02 0.00| 0 3 96 0| 0 0| 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0|

02:14:22| 0.07 0.02 0.00| 0 4 96 0| 0 0| 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0|

02:14:23| 0.07 0.02 0.00| 0 3 97 0| 0 0| 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0|



-sys:打印系统信息,包括-t(打印当前时间)、-l(打印负载信息,分1分钟、5分钟、15分钟)、-c(打印cpu信息)、-s(打印交换分区信息)
-d:打印磁盘信息,需要指点磁盘设备名
-n:打印网络信息,接收和发送大小,需要指点网卡设备名

查看DISK(-d)和NET(-n)需要带具体的设备名(具体可以查看/proc/diskstats和/proc/net/dev中的设备或者可以取自iostat
和sar -n DEV)

Linux指标的数据都来自/proc目录下的相关系统元数据:
LOAD : /proc/loadavg
CPU : /proc/stat
SWAP : /proc/vmstat
DISK : /proc/diskstats
NET : /proc/net/dev
查看MySQL响应时间(rt)

通过调用tcprstat来监控MySQL的响应时间。


shell> ./orzdba -rt -C 10 -i 1 -t -d sda


.=================================================.

| Welcome to use the orzdba tool ! |

| Yep...Chinese English~ |

'=============== Date : 2014-12-31 ==============='


-------- -------------------------io-usage----------------------- --------tcprstat(us)--------

time | r/s w/s rkB/s wkB/s queue await svctm %util| count avg 95-avg 99-avg|

01:53:22| 0.0 0.0 0.1 0.0 0.0 0.4 0.4 0.0| 0 0 0 0|

01:53:24| 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0| 0 0 0 0|

01:53:25| 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0| 0 0 0 0|

01:53:26| 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0| 0 0 0 0|

01:53:27| 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0| 0 0 0 0|

01:53:28| 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0| 0 0 0 0|

01:53:29| 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0| 0 0 0 0|

01:53:30| 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0| 0 0 0 0|

01:53:31| 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0| 0 0 0 0|

01:53:32| 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0| 0 0 0 0|

01:53:33| 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0| 0 0 0 0|




监控InnoDB的性能指标


shell> ./orzdba -innodb -C 10 -i 1


.=================================================.

| Welcome to use the orzdba tool ! |

| Yep...Chinese English~ |

'=============== Date : 2014-12-31 ==============='


-------- ---innodb bp pages status-- -----innodb data status---- --innodb log-- his --log(byte)-- read ---query---
time | data free dirty flush| reads writes read written|fsyncs written| list uflush uckpt view inside que|
01:48:38| 0 0 0 0| 0 0 0 0| 0 0| 0 0 0 0 0 0|
01:48:39| 638 7553 0 0| 0 0 0 0| 0 0| 350 0 0 0 0 0|
01:48:40| 638 7553 0 0| 0 0 0 0| 0 0| 350 0 0 0 0 0|
01:48:41| 638 7553 0 0| 0 0 0 0| 0 0| 350 0 0 0 0 0|
01:48:42| 638 7553 0 0| 0 0 0 0| 0 0| 350 0 0 0 0 0|
01:48:43| 638 7553 0 0| 0 0 0 0| 0 0| 350 0 0 0 0 0|
01:48:44| 638 7553 0 0| 0 0 0 0| 0 0| 350 0 0 0 0 0|
01:48:45| 638 7553 0 0| 0 0 0 0| 0 0| 350 0 0 0 0 0|
01:48:46| 638 7553 0 0| 0 0 0 0| 0 0| 350 0 0 0 0 0|
01:48:47| 638 7553 0 0| 0 0 0 0| 0 0| 350 0 0 0 0 0|
01:48:48| 638 7553 0 0| 0 0 0 0| 0 0| 350 0 0 0 0 0|



监控MySQL Server性能


shell> ./orzdba -mysql -C 10 -i 1


.=================================================.

| Welcome to use the orzdba tool ! |

| Yep...Chinese English~ |

'=============== Date : 2014-12-31 ==============='


-------- -QPS- -TPS- -Hit%- ------threads------ -----bytes----

time | ins upd del sel iud| lor hit| run con cre cac| recv send|

01:45:58| 0 0 0 0 0| 0 100.00| 0 0 0 0| 0 0|

01:45:59| 0 0 0 1 0| 0 100.00| 1 2 0 0| 839 1k|

01:46:01| 0 0 0 1 0| 0 100.00| 1 2 0 0| 839 1k|

01:46:02| 0 0 0 1 0| 0 100.00| 1 2 0 0| 839 1k|

01:46:03| 0 0 0 1 0| 0 100.00| 1 2 0 0| 839 1k|

01:46:04| 0 0 0 1 0| 0 100.00| 1 2 0 0| 839 1k|

01:46:05| 0 0 0 1 0| 0 100.00| 1 2 0 0| 839 1k|

01:46:06| 0 0 0 1 0| 0 100.00| 1 2 0 0| 839 1k|

01:46:07| 0 0 0 1 0| 0 100.00| 1 2 0 0| 839 1k|

01:46:08| 0 0 0 1 0| 0 100.00| 1 2 0 0| 839 1k|

01:46:09| 0 0 0 1 0| 0 100.00| 1 2 0 0| 839 1k|




安装问题:
Usage: Socket::inet_ntoa(ip_address_sv) at ./orz line 477

因主机名不能解析,将主机名和IP写到/etc/hosts文件。

关于“MySQL监控工具中orzdba怎么安装”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。