Mysql监控工具之-orzdba

orzdba是淘宝开源的一个实时监控工具,项目地址: http://code.taobao.org/p/orzdba/src/trunk/
使用说明文档:

1、查看系统、磁盘和网卡信息
   
  1. ./orzdba.pl -sys -d sda -n em1
输出信息:
   
  1. .=================================================.
  2. |       Welcome to use the orzdba tool !          | 
  3. |          Yep...Chinese English~                 |
  4. '=============== Date : 2014-08-19 ==============='
  5. HOST: myhost02   IP: 10.0.60.28
  6. -------- -----load-avg---- ---cpu-usage--- ---swap--- ----net(B)---- -------------------------io-usage----------------------- 
  7.   time  |  1m    5m   15m |usr sys idl iow|   si   so|   recv   send|   r/s    w/s    rkB/s    wkB/s  queue await svctm %util|
  8. 16:45:48| 8.68  9.35  9.09|  0   0  99   1|    0    0|      0      0|   11.9   13.0   492.6    723.7   0.3   11.4   1.2   2.9|
  9. 16:45:49| 8.68  9.35  9.09|  8   2  48  42|    0    0|   1.1m   3.0m|  280.3  447.9  4484.8  22591.5  11.5   15.7   1.4 100.0|
  10. 16:45:51| 8.68  9.35  9.09| 11   3  48  38|    0    0|   705k   1.8m|  377.1  428.9  6048.9  22866.8   9.3   11.6   1.2 100.0|
  11. 16:45:52| 8.68  9.35  9.09|  7   2  53  38|    0    0|   1.1m   2.8m|  237.5  460.1  3832.0  22217.1   9.2   13.2   1.4 100.0|

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

2、查看系统信息、及mysql增、删、查、更新计数、以及Innodb Hit%
    
  1. ./orzdba.pl -lazy -S /log/percona56/mysql.sock 
输出信息:
    
  1. .=================================================.
  2. |       Welcome to use the orzdba tool !          | 
  3. |          Yep...Chinese English~                 |
  4. '=============== Date : 2014-08-19 ==============='
  5. HOST: myhost02   IP: 10.0.60.28
  6. DB  : employees|mysite|percona|performance_schema|sakila|test1|tpcc300|world
  7. Var : binlog_format[STATEMENT] max_binlog_cache_size[17179869184G] max_binlog_size[1G] 
  8.       max_connect_errors[65536] max_connections[4500] max_user_connections[4000] 
  9.       open_files_limit[65536] sync_binlog[0] table_definition_cache[65536] 
  10.       table_open_cache[2000] thread_cache_size[256] 
  11.       innodb_adaptive_flushing[ON] innodb_adaptive_hash_index[ON] innodb_buffer_pool_size[16G] 
  12.       innodb_file_per_table[ON] innodb_flush_log_at_trx_commit[2] innodb_flush_method[O_DIRECT] 
  13.       innodb_io_capacity[1000] innodb_lock_wait_timeout[5] innodb_log_buffer_size[200M] 
  14.       innodb_log_file_size[1G] innodb_log_files_in_group[2] innodb_max_dirty_pages_pct[60] 
  15.       innodb_open_files[60000] innodb_read_io_threads[8] innodb_thread_concurrency[8] 
  16.       innodb_write_io_threads[8] 
  17. -------- -----load-avg---- ---cpu-usage--- ---swap---                     -QPS- -TPS-         -Hit%- 
  18.   time  |  1m    5m   15m |usr sys idl iow|   si   so|  ins   upd   del    sel   iud|     lor    hit|
  19. 16:47:02|13.04 10.63  9.56|  0   0  99   1|    0    0|    0     0     0      0     0|       0 100.00|
  20. 16:47:03|13.04 10.63  9.56| 10   2  47  41|    0    0| 1414  1825   102   5464  3341|   83455  99.66|
  21. 16:47:04|13.04 10.63  9.56| 10   2  46  42|    0    0| 1334  1751   103   5132  3188|   79278  99.61|
  22. 16:47:05|13.04 10.63  9.56| 10   3  52  36|    0    0| 1447  1872   108   5419  3427|   86741  99.60|
  23. 16:47:06|13.04 10.63  9.56| 10   2  50  37|    0    0| 1443  1904   117   5637  3464|   90647  99.67|

--lazy:包括-t、-l、-c、-s、-com(打印mysql的Com_select,Com_insert,Com_update,Com_delete计数)、-hit(打印innodb buffer pool Hit%,(Innodb_buffer_pool_read_requests - Innodb_buffer_pool_reads) / Innodb_buffer_pool_read_requests * 100%)

3、打印innodb rows状态
   
  1. ./orzdba.pl -innodb_rows -S /log/percona56/mysql.sock
输出信息:
   
  1. ---innodb rows status--- 
  2.   ins   upd   del   read|
  3.     0     0     0      0|
  4.   870  1753    68   7699|
  5.  1368  2689   103  11717|
  6.  1295  2557   103  10735|

-innodb_rows:打印Innodb_rows_inserted/updated/deleted/read的计数

4、打印innodb buffer pool中页状态信息
   
  1. ./orzdba.pl -S /log/percona56/mysql.sock -innodb_pages 
输出信息:
   
  1. ---innodb bp pages status-- 
  2.    data   free  dirty flush|
  3.       0      0      0     0|
  4.  962909   4048 589242   618|
  5.  962910   4048 589728   564|
  6.  962919   4039 589148   807|

-innodb_pages:打印Innodb_buffer_pool_pages_data/free/dirty/flushed状态信息

5、打印innodb 数据状态
   
  1. ./orzdba.pl -S /log/percona56/mysql.sock -innodb_data
输出信息:
   
  1. -----innodb data status---- 
  2.  reads writes  read written|
  3.      0      0      0      0|
  4.    246    550   4.0m  23.4m|
  5.    387    618   6.1m  17.3m|
  6.    296    552   4.3m  20.9m|
  7.    390    667   6.7m  19.6m|
  8.    327    518   4.6m  21.2m|

-innodb_data:打印Innodb_data_reads/writes/read/written状态信息

6、打印Innodb 日志状态
   
  1. ./orzdba.pl -S /log/percona56/mysql.sock -innodb_log
输出信息:
   
  1. --innodb log-- 
  2. fsyncs written|
  3.      0       0|
  4.      1    994k|
  5.      2    397k|
  6.      1    1.0m|

-innodb_log:打印Innodb_os_log_fsyncs/written状态信息

7、打印innodb 状态信息,来自show engine innodb status,包括(history list/ log unflushed/uncheckpointed bytes/ read views/ queries inside/queued)
   
  1. ./orzdba.pl -S /log/percona56/mysql.sock -innodb_status
输出信息:
   
  1.   his --log(byte)--  read ---query--- 
  2.  list uflush  uckpt  view inside  que|
  3.     0      0      0     0     0     0|
  4.   907    15k  792.9m    2     8     7|
  5.   958    51k  793.3m    1     8     8|
  6.   963    37k  794.2m    2     8     8|
  7.  1030    44k  790.1m    2     8     7|
  8.  1104    16k  790.8m    0     7     8|

-innodb_status:来自mysql -S /log/percona56/mysql.sock -e "show engine innodb status\G"|grep -E -A5 -B1 --color "^TRANSACTIONS|LOG|ROW OPERATIONS"的输出,log unflushed = Log sequence  number - Log flushed up to; uncheckpointed bytes = Log sequence number  - Last checkpoint at

8、打印mysql线程状态
   
  1. ./orzdba.pl -S /log/percona56/mysql.sock -T
输出信息:
   
  1. ------threads------ 
  2.  run  con  cre  cac|
  3.    0    0    0    0|
  4.   17   18    0    3|
  5.   17   18    0    3|
  6.   17   18    0    3|
-T:打印Threads_running,Threads_connected,Threads_created,Threads_cached的状态信息

9、打印mysql接收和发送的字节数
   
  1. ./orzdba.pl -S /log/percona56/mysql.sock -B

输出信息:
   
  1. -----bytes---- 
  2.    recv   send|
  3.       0      0|
  4.    179k   946k|
  5.    450k   2.4m|
  6.    177k   949k|
  7.    377k   2.0m|

-B:打印Bytes_received,Bytes_sent的状态信息

10、打印mysql信息,包括-t,-com,-hit,-T,-B
   
  1. ./orzdba.pl -S /log/percona56/mysql.sock -mysql
输出信息:

    
  1. --------                     -QPS- -TPS-         -Hit%- ------threads------ -----bytes---- 
  2.   time  |  ins   upd   del    sel   iud|     lor    hit| run  con  cre  cac|   recv   send|
  3. 16:21:21|    0     0     0      0     0|       0 100.00|   0    0    0    0|      0      0|
  4. 16:21:22| 1556  2031   120   5993  3707|   92736  99.62|  17   18    0    3|   406k   2.2m|
  5. 16:21:23| 1601  2087   121   6179  3809|   98670  99.62|  17   18    0    3|   424k   2.2m|
  6. 16:21:24| 1886  2452   144   7118  4482|  115044  99.63|  17   18    0    3|   497k   2.6m|
  7. 16:21:25| 1618  2131   124   6425  3873|  100295  99.64|  17   18    0    3|   435k   2.3m|
  8. 16:21:26| 1872  2477   153   7258  4502|  115035  99.65|  17   18    0    3|   497k   2.6m|
  9. 16:21:27| 1355  1750    97   5184  3202|   82702  99.64|  14   18    0    3|   352k   1.9m|
  10. 16:21:28| 1675  2201   134   6389  4010|  100698  99.66|  17   18    0    3|   442k   2.3m|

11、打印Innodb信息,包括-t,-innodb_pages,-innodb_data,-innodb_log,-innodb_status
   
  1. ./orzdba.pl -S /log/percona56/mysql.sock -innodb

输出信息:
   
  1. -------- ---innodb bp pages status-- -----innodb data status---- --innodb log--   his --log(byte)--  read ---query--- 
  2.   time  |   data   free  dirty flush| reads writes  read written|fsyncs written| list uflush  uckpt  view inside  que|
  3. 16:20:24|      0      0      0     0|     0      0      0      0|     0       0|    0      0      0     0     0     0|
  4. 16:20:25| 962773   3999 548062   209|   575    657   9.0m   7.9m|     1    1.4m| 1168   275k  727.5m    3     7     4|
  5. 16:20:26| 962882   3886 549363   137|   549    604   8.6m   5.7m|     1    1.4m| 1202   475k  728.7m    1     8     4|
  6. 16:20:27| 962835   3938 550405   181|   505    619   7.9m   6.9m|     1    1.3m| 1199   447k  729.7m    1     8     6|
  7. 16:20:28| 962789   3986 551648   203|   562    697   8.8m   7.8m|     2    1.5m|  927   329k  730.8m    1     8     8|
  8. 16:20:29| 962842   3929 552786   151|   496    593   7.8m   6.0m|     1    1.3m|  941   476k  731.9m    1     8     5|
  9. 16:20:30| 962783   3988 553816   489|   575    833   9.0m  16.8m|     2    1.5m| 1055    21k  733.2m    1     8     8|
  10. 16:20:31| 962830   3940 554500   348|   436    589   6.8m  12.0m|     2    1.1m| 1230    10k  734.1m    2     8     7|

12、查看mysql的响应时间,需要tcprstat
   
  1. ./orzdba.pl  -lazy -rt -S /log/percona56/mysql.sock 
输出信息:
   
  1. -------- -----load-avg---- ---cpu-usage--- ---swap---                     -QPS- -TPS-         -Hit%- --------tcprstat(us)-------- 
  2.   time  |  1m    5m   15m |usr sys idl iow|   si   so|  ins   upd   del    sel   iud|     lor    hit|  count    avg 95-avg 99-avg|
  3. 17:12:13| 7.74  9.54  9.62|  0   0  99   1|    0    0|    0     0     0      0     0|       0 100.00|      0      0      0      0|
  4. 17:12:14| 7.74  9.54  9.62|  9   3  53  36|    0    0| 1187  1559    95   4507  2841|   70464  99.60|   7114   1660    375    763|
  5. 17:12:15| 7.74  9.54  9.62|  9   2  54  35|    0    0| 1175  1505    82   4414  2762|   63922  99.57|   7082   2501    324    756|
  6. 17:12:16| 7.74  9.54  9.62|  9   3  56  33|    0    0| 1188  1567    96   4647  2851|   68659  99.61|   7546   1357    305    634|
  7. 17:12:17| 7.76  9.52  9.61| 10   3  50  36|    0    0| 1311  1729   102   5098  3142|   77111  99.61|   8173   2245    330    824|
  8. 17:12:19| 7.76  9.52  9.61| 10   3  57  30|    0    0| 1235  1622   101   4800  2958|   73543  99.63|   7904   1414    280    683|
  9. 17:12:20| 7.76  9.52  9.61|  8   3  62  27|    0    0| 1173  1522    82   4542  2777|   67550  99.61|   6407   2360    397    856|
  10. 17:12:21| 7.76  9.52  9.61|  8   3  54  35|    0    0| 1046  1380    86   4039  2512|   63606  99.63|   7442   2128    350    803|

-rt:打印mysql 服务器响应时间
-lazy:包括-t,-l,-c,-s,-com,-hit
同时要将ip地址和主机名映射写到/etc/hosts文件,如果映射不对,将rt的值为0

安装tcprstat:
需要使用tcprstat
   
  1. wget http://github.com/downloads/Lowercases/tcprstat/tcprstat-static.v0.3.1.x86_64
  2. mv tcprstat-static.v0.3.1.x86_64 /usr/bin/tcprstat
  3. chmod +/usr/bin/tcprstat

同时需要安装perl的相关模块:
   
  1. yum -y install perl-Test*
  2. tar -zxvf version-0.99.tar.gz 
  3. cd version-0.99
  4. perl Makefile.PL 
  5. make
  6. make install
  7. tar -zxvf Class-Data-Inheritable-0.08.tar.gz
  8. cd Class-Data-Inheritable-0.08
  9. perl Makefile.PL 
  10. make
  11. make install
  12. tar -zxvf Module-Build-0.31.tar.gz
  13. cd Module-Build-0.31
  14. perl Build.PL 
  15. ./Build 
  16. ./Build test
  17. ./Build install
  18. tar -zxvf File-Lockfile-v1.0.5.tar.gz 
  19. cd File-Lockfile-v1.0.5
  20. perl Build.PL 
  21. ./Build
  22. ./Build test
  23. ./Build install

13、其他参数
-P:指定mysql端口号
-S:指定mysql socket文件
如果其他参数,需要修改代码

控制输出间隔和次数,以及是否输出颜色:
-i:间隔多少秒进行数据抓取
-C:抓取多少次数,除启动orzdba后的第一次抓取
-nocolor:不显示颜色

控制日志输出:
-L:打印抓取信息到日志文件
-logfile_by_day:每天生成一个日志文件,后缀为'yyyy-mm-dd'

报错:
Usage: Socket::inet_ntoa(ip_address_sv) at ./orz line 477

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





转载于:https://my.oschina.net/anthonyyau/blog/304415

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值