MySQL实时性能监控工具doDBA tools

doDBA tools是什么?

doDBA tools是一个基于控制台的远程监控工具,它不需要在本地/远程系统上安装任何软件,它可以实时收集操作系统、MySQL、InnoDB的实时性能状态数据,并可以生成Doing日志文件,来帮助你快速了解/优化系统及MySQL数据库。

特点:

  • golang语言开发。
  • 可收集Linux、MySQL相关性能数据。
  • 可本地或远程收集,可多台。
  • 提供类似Linux top的mytop的功能。
  • 基于并发生成Doing日志,还原现场。
  • 可记录到日志文件。

doDBA tools工作原理

远程收集系统信息是通过ssh(需提供用户名和密码)的方式连接到远程服务器上收集,收集的方法都是通过读取Linux的proc下的等meminfo,diskstats,uptime,net,vmstat ,cpuinfo ,loadavg等文件,这和pmm,zabbix收集方式一致。

远程收集MySQL信息是通过 MySQL tcp连接到MySQL数据库上收集,只需要授予连接用户PROCESS、SELECT权限即可。

系统信息和MySQL信息的收集可以分离,如果只想收集系统信息,只需要提供系统用户名密码即可,如果只收集MySQL可以只提供MySQL连接信息,如果是rds用户,可以使用-rds参数,在使用mytop时会自动忽略系统信息的收集。

如何使用doDBA?

Github主页:https://github.com/dblucyne/dodba_tools

下载下来就可以直接使用,不依赖于任何环境。但可以在doDBA.conf配置文件中先把需要设置的信息填写好。

使用帮助:

使用实例

1. 收集Linux性能数据

2. 收集MySQL性能数据
3. 收集InnoDB性能数据
4. 收集MySQL及Linux性能数据
$ ./doDBA -h 127.0.0.1 -myall
5. mytop –like linux top
$ ./doDBA -h 127.0.0.1 -mytop

DoDBA tools -19:32:36 on host 127.0.0.1 UP 61 days  Load: 0.64 0.75 0.63 
CPU: 1.99% user, 2.84% sys, 0.00% nice, 0.28% iowait, 94.89% idle
Mem:  23.3G total, 23.0G used, 317.6M free, 0K buffers 
Swap:  24.0G total, 0K used, 24.0G free, 13.2G Cached 
MySQL: 16 QPS, 20 TPS, 0 slowSQL, 2 run

         ID          USER      IP/HOST          DB     Time           State                            SQL
         --          ----      -------          --     ----           -----                            ---
    2495440        zabbix    127.0.0.1                    0            init          show full processlist

  

6. 借助Shell收集多台
$ cat ip.txt
10.1.x.x1
10.1.x.x2

  

Shell

7. 收集到日志文件
8. 开启Doing功能

使用【-t】参数可以基于Threads_running的数量设置阈值,设置后可记录「processlist,engine innodb status」信息到dodba.log日志中,–重现现场。

9. 查看Doing日志

猜你喜欢

转载自www.cnblogs.com/microtiger/p/9087365.html