MySQL DBA运维工具之Orztop

一.Orztop简介

  Orztop同样也是淘宝开源的一款基于perl语言的MySQL运维工具,它可以查看MySQL实例中当前的运行的SQL语句执行情况,相当于执行`show full processlist;`命令的结果,只需要实时盯着屏幕就可以抓取当前运行的SQL,十分方便。通过github可以方便的获取该脚本:
git clone https://github.com/waringid/Mysql.git
mv Mysql orztop
tree orztop/
orztop/
├── orztop
└── otztop.Readme.txt

需要安装两个依赖包:

yum install perl-TermReadKey.x86_64 perl-DBD-MySQL -y

二.使用方法

./orztop --help
==========================================================================================
Info  :
		Created By zhuxu@taobao.com
Usage :
Command line options :
	
	-help       Print Help Info. 
	-h,--host   Hostname/Ip to use for mysql connection.
	-u,--user   User        to use for mysql connection.
	-p,--pwd    Password    to use for mysql connection.
	-P,--port   Port        to use for mysql connection(default 3306). 

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

	-t          Time(second) Interval.  

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

命令也是十分简单,看看执行效果,这里做一个sysbench的压测看看效果

MySQL Processlist Info :                                                  [2020-09-18 17:48:23]

[MySQL status]  Ins/Upd/Del/Sel:200/401/201/2768  Lor:35466  Hit%:100.00  Threads_running:13
[Command info]  Sleep:20  Execute:12  Query:1  => Total Proc [33]
[State   info]  starting:12  updating:1  

      Id                 Host            User              DB         Command       Time    State                                             
      --                 ----            ----              --         -------       ----    -----                                             
     316      127.0.0.1:36704            root          sbtest         Execute          0    starting                                          
 ==> [ SQL ] COMMIT
     317      127.0.0.1:36706            root          sbtest         Execute          0    starting                                          
 ==> [ SQL ] COMMIT
     321      127.0.0.1:36714            root          sbtest         Execute          0    starting                                          
 ==> [ SQL ] COMMIT
     323      127.0.0.1:36718            root          sbtest         Execute          0    starting                                          
 ==> [ SQL ] COMMIT
     325      127.0.0.1:36722            root          sbtest         Execute          0    starting                                          
 ==> [ SQL ] COMMIT
     326      127.0.0.1:36724            root          sbtest         Execute          0    starting                                          
 ==> [ SQL ] COMMIT
     328      127.0.0.1:36728            root          sbtest         Execute          0    updating                                          
 ==> [ SQL ] DELETE FROM sbtest5 WHERE id=5035
     331      127.0.0.1:36758            root          sbtest         Execute          0    starting                                          
 ==> [ SQL ] COMMIT
     333      127.0.0.1:36766            root          sbtest         Execute          0    starting                                          
 ==> [ SQL ] COMMIT
     336      127.0.0.1:36754            root          sbtest         Execute          0    starting                                          
 ==> [ SQL ] COMMIT
     341      127.0.0.1:36738            root          sbtest         Execute          0    starting                                          
 ==> [ SQL ] COMMIT
     346      127.0.0.1:36734            root          sbtest         Execute          0    starting                                          
 ==> [ SQL ] COMMIT
     348            localhost            root                           Query          0    starting

可以实时显示当前MySQL实例的SQL执行情况,包括insert,update,delete,select,Hit%,Threads_running等信息。

posted @ 2020-09-18 17:51  yang417  阅读(342)  评论(0)    收藏  举报