利用pt-heartbeat监控MySQL的复制延迟详解
pt-heartbeat 是 PERCONA 开发的一个工具集中的一个,专门用来监控MySQL和PostgreSQL的复制延迟。比较成熟,例如Uber等大型公司都在使用。slave 会复制 heartbeat表,其中就包含了 master执行修改动作的时间戳,对其和 slave 的本地时间进行对比,得到一个差值,就是复制延迟的值,从而判断复制状态是否正常,以及延迟时间是否符合预期。pt-heartbeat 是根据实际的复制记录来计算的,所以他不关心你使用什么方式进行复制。pt-heartbeat 可以监控任意深度的复制层级,因为 heartbeat 表中有 server_id 字段,在监控某个 slave 的延迟时可以指定是参考哪个 server_id,例如想知道这个 slave 与其 master 的 master 的延迟情况,指定目标 master的 server_id 就可以了。因为 pt-heartbeat 严格依赖时间,所以需要注意 master 与 slave 的时间一定要同步。下面是在CentOS7下的安装过程:pt-heartbeat 的官方文档地址: