PMM(Percona Monitoring and Management)
是一个用于管理和监控数据库性能的开源平台。 。 它能提供全面的基于时间和各类监控指标、计数器的分析。

性能测试中,是做数据库监控的较好工具。

官网
https://www.percona.com/doc/percona-monitoring-and-management/index.html

支持的数据库

mysql、mongodb、postgresql
性能测试之数据库监控分析工具PMM-LMLPHP

原理分析

性能测试之数据库监控分析工具PMM-LMLPHP
以mysql为例,整个工作的基本原理简单说:

  1. PMM-Client客户端,采用mysql_exporter(多数软件都有此exporter监控计数器),收集数据
  2. PMM-Client客户端调用PMM-Server服务端的api,把收集的数据保存到服务端的数据库。
  3. PMM-Server服务端其实是集成了Grafana的功能,支持对收集的数据做可视化展示和查询

快速搭建

  1. 安装服务端
$ docker pull percona/pmm-server:1
$ docker create \
   -v /opt/prometheus/data \
   -v /opt/consul-data \
   -v /var/lib/mysql \
   -v /var/lib/grafana \
   --name pmm-data \
   percona/pmm-server:1 /bin/true
$ docker run -d \
   -p 80:80 \
   --volumes-from pmm-data \
   --name pmm-server \
   --restart always \
   percona/pmm-server:1

测试是否成功
浏览器访问http://服务器端ip:端口
  1. 安装客户端-在目标数据库主机
$ yum install pmm-client
  1. 配置客户端监控
pmm-admin config --server 服务器端ip:端口
pmm-admin add mysql:metrics --user 数据库用户名  --password 数据库密码 --host 数据库IP
pmm-admin add mysql:queries --user 数据库用户名  --password 数据库密码 --host 数据库IP

效果展示

慢sql监控:可以直观看到慢sql的执行过程、执行计划、执行详情、索引详情
性能测试之数据库监控分析工具PMM-LMLPHP

数据库性能监控:可以监控CPU、IO、Swap、Network
性能测试之数据库监控分析工具PMM-LMLPHP

性能测试之数据库监控分析工具PMM-LMLPHP

05-10 15:47