简介
入题之前先讲讲为什么写这篇文章,这就不得不提起MySQL与percona,阿里基于mysql开发了AliSQL,写这篇文章的时候阿里已经将其开源,percona是一家领先的MySQL咨询公司,该公司基于mysql开发了Percona Server,Percona Server是一款独立的数据库产品,为用户提供了换出其MySQL安装并换入Percona Server产品的能力。percona除了开发了多款数据库产品,还开发了数据库监控程序:pmm(Percona Monitoring and Management)服务器,我们都知道mysql自身缺乏实时的监控功能,而此时pmm-server就恰好解决了我们这一难题,好了废话不多说,先看一张pmm server的监控图。
常规的监测项目都有了,最吸引我的一点在于它的慢日志分析功能,如下图所示:
安装步骤
1. 在vmware或者virtualbox上安装ubuntu14.04 Server镜像,可以选择清华大学的镜像,下载速度快
2. 系统装完后接下来就要在ubuntu上安装docker了,执行命令:
1 | curl -sSL https://get.daocloud.io/docker | sh |
等待完成即可,这是一种安装docker比较快的方式,而且安装的docker版本也比较高,安装完成后输入docker -v看到下面信息说明安装完成:Docker version 17.04.0-ce, build 4845c56
3. 安装完docker,接下来就需要下载pmm server的镜像,由于下载国外镜像速度慢而且网络不稳定,这里推荐一个中科大的开源docker镜像:
在 Docker 的启动参数中加入:1
--registry-mirror=https://docker.mirrors.ustc.edu.cn
Ubuntu 用户(包括使用 systemd 的 Ubuntu 15.04)可以修改 /etc/default/docker 文件,加入如下参数:1
DOCKER_OPTS="--registry-mirror=https://docker.mirrors.ustc.edu.cn"
其他 systemd 用户可以通过执行 sudo systemctl edit docker.service 来修改设置, 覆盖默认的启动参数:1
2
3[Service]
ExecStart=
ExecStart=/usr/bin/docker -d -H fd:// --registry-mirror=https://docker.mirrors.ustc.edu.cn
4. 接下来下载pmm镜像的速度就会大大提升,执行下面命令:
1 | docker pull percona/pmm-server:1.2.0 |
然后等待完成即可。
5. 创建PMM 数据容器:
1 | docker create \ |
6. 运行PMM server容器:
1 | docker run -d \ |
7. 安装PMM客户端:
1 | rpm -ivh https://www.percona.com/downloads/pmm-client/pmm-client-1.2.0/binary/redhat/7/x86_64/pmm-client-1.2.0-1.x86_64.rpm |
8. 连接PMM服务器:
1 | pmm-admin config --server pmm服务器主机地址 |
9. 配置mysql监控:
1 | pmm-admin add mysql --user root --password 123456 --host mysql ip地址 --port 3306 instace3306 |
注:pmm-client收的监控数据来源有这么几方面
- MySQL所在机器的系统指标
- MySQL的performance_schema库
- slow-log(慢查询日志–mysql要开启慢日志功能)
如果我们想收集a和c中的指标的话,最好还是将pmm-client部署在MySQL所在机器