1.前言
之前分享了几个在日常运维PostgreSQL中的得力助手,今天分享的是另外一个神器Toolkit,用“个”这个量词不太确切,因为Toolkit是一些命令行工具的集合。不仅仅支持PostgreSQL,还支持MySQL、MongoDB等等。
2.实操
2.1.数据库级
yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpmyum install percona-toolkit小酌一杯后安装完毕,pt-pg-summary是针对PostgreSQL的命令行工具,同理,还有pt-mysql-summary、pt-mongodb-summary等等。
pt-pg-summary可以采集到如下信息,包括流复制、索引和表的命中率、等待事件等等。

开一个会话使用pgbench进行压测,然后使用pt-pg-summary进行采集。

稍等片刻,即可看到采集信息。前面是实例的基础信息以及流复制情况:
后面是数据库相关命中率等:

下面是比较关心的等待事件,和数据库性能直接挂钩,可以看到,这里的瓶颈主要在IO上了,Waiting for a read from a relation data file:

下面就是采集过程中,使用到的表,i表示insert、r表示read




查看磁盘,pt-diskstats,和iostat有点类似:
3.小结
Toolkit是一个不错的巡检工具,遗憾的是,虽然命令行集很多,但80%以上都是针对MySQL的。不过基于PostgreSQL的pt-pg-summary也够用,关心的指标基本上都囊括了,不乏为一个好的贫民版巡检方案。