pt-heartbeat 监测RDS延迟

pt-heartbeat 很常用的一个检测主从是否延迟的工具。

下文虽然说是针对RDS的笔记,但是同样适用于社区版的MySQL。

原理:
在master上创建一个表,按照一定的时间频率更新该表的字段(把时间更新进去)。
连接到slave上检查复制的时间记录,与slave的当前系统时间进行比较,得出时间差异。

注意: 主从机器的时间同步要基本一致,不然pt-heartbeat测出的结果不准确。

1、连接到RDS主实例,创建test.heartbeat表,建议使用memory引擎

CREATE TABLE `test`.`heartbeat` (
`ts` varchar(26) NOT NULL,
`server_id` int(10) unsigned NOT NULL,
`file` varchar(255) DEFAULT NULL,
`position` bigint(20) unsigned DEFAULT NULL,
`relay_master_log_file` varchar(255) DEFAULT NULL,
`exec_master_log_pos` bigint(20) unsigned DEFAULT NULL,
PRIMARY KEY (`server_id`)
) ENGINE=Memory DEFAULT CHARSET=utf8 ;

2、在主实例上启动pt-heartbeat进程,并在后台运行:

pt-heartbeat --user mw_dba --password 123456 --host rm-xxxxxx.mysql.rds.aliyuncs.com --database test --update --interval=1  --no-version-check  --daemonize

3、连接到只读实例上执行命令,检查落于Master多长时间

pt-heartbeat --user mw_dba --password 123456  --host rr-xxxxxx.mysql.rds.aliyuncs.com --database test --monitor --master-server-id 35006  --no-version-check

说明:

1、如果步骤2的结果始终未0,表示没有延迟。

2、上面命令中 --master-server-id 跟的是master的server_id。 --minitor 表示一直监控不退出

4、监控完毕,记得关闭第二步的pt-heartbeat后台进程
ps aux | egrep pt-heartbeat | grep -v grep|awk ‘{print $2}‘|xargs kill -9

或者使用

pt-heartbeat --user mw_dba --password 123456 --host rm-xxxxxx.mysql.rds.aliyuncs.com  --no-version-check   --stop


说明:
对于阿里云的RDS, 使用各种percona工具的时候,经常出现不支持的情况,可能是alisql修改了某些版本信息,导致pt工具检查失败, 我们执行时候 加上 --no-version-check  参数即可 。

时间: 2024-08-26 07:25:06

pt-heartbeat 监测RDS延迟的相关文章

mysql主从同步(3)-percona-toolkit工具(数据一致性监测、延迟监控)使用梳理

转自:http://www.cnblogs.com/kevingrace/p/6261091.html 在mysql工作中接触最多的就是mysql replication mysql在复制方面还是会有一些常规问题: 比如主库宕机或者从库宕机有可能会导致复制中断,通常需要进行人为修复, 或者很多时候需要把一个从库提升为主库,但对从库和主库的数据一致性不能保证一样. 这种情况下就需要使用percona-toolkit工具的pt-table-checksum组件来检查主从数据的一致性:如果发现不一致的

你所不知道的Pt heartbeat

pt-heartbeat原理研究 一.简介 Mysql Seconds_Behind_Master参数对于主从延迟测量并不准确,因为他的统计基于 slave SQLthread 和I/O thread的时间差,如果i/o thread 受到网络影响,这个估值就非常不正确.一般采用更精确的主从延迟检测pt-heartbeat.pt-heartbeat分为两个部分第一个为update,发生在主库上,更新时间戳.第二个部分为monitor或check,发生在从库,检查主库传过来的时间戳与从库系统时间做

pt-heartbeat监测mysql主从同步延迟

pt-heartbeat监测mysql主从同步延迟: 安装percona toolkit(pt-heartbeat为该软件的子命令): http://repo.percona.com/release/6/RPMS/x86_64/percona-toolkit-3.0.13-1.el6.x86_64.rpm yum install perl-DBD-MySQL yum install perl-IO-Socket-SSL yum install perl-TermReadKey 在主库上创建hea

如何用ping来测试Azure虚机网络延迟的监测工作

ping操作是大家非常熟悉的测试网络连通性和延迟的操作,之前曾经听到有客户用不能"ping"通azure虚机来说事.因为客户需要能够实现对网络延迟的监测.而在windows Azure上我们是无法使用ping从外部监测Azure上的虚拟机,也无法从Azure虚拟机监测外部延迟的.因为ping基于ICMP协议,在WindowsAzure上,所有服务的对外接口都仅支持TCP和UDP协议.其实,我们可以做到实现对网络延迟的监测.微软technet提供了一个工具叫psping.可以从这里下载h

mysql主从一致性校验工具-pt

一.环境 1.系统环境 系统 IP 主机名 说明 server_id centos6.7 MasterIP master 数据库:主 177  centos6.7 SlaveIP slave 数据库:从 148 2.软件环境 软件 版本 安装方式 说明 pt工具 3.0.4 编译安装 这是一个综合工具包,包含很多pt命令 mysql数据库 5.6.37 yum安装 主从环境 3.需要用到库 库名 表名 用途  percona checksums 存储pt命令监测的结果,第一次执行检测命令时会自己

分布式数据存储 - MySQL主从复制高可用方案

前面几篇文章说道MySQL数据库的高可用方案主从复制.主从复制的延迟产生原因.延迟检测及延迟解决方案(并未从根本上解决),这种主从复制方案保证数据的冗余的同时可以做读写分离来分担系统压力但是并非是高可用方案,因为主从节点中主节点仍然是单点的,一旦主节点宕机会导致应用中写失败.双主复制虽然很好的避免主节点的单点故障,但是未提供统一访问入口来实现负载均衡,如果其中master宕掉的话需要手动切换到另外一个master,而不能自动进行切换.本篇文章就来剖析主从复制的高可用. 一.基础概念介绍 Keep

mysql高可用方案MHA介绍

概述 MHA是一位日本MySQL大牛用Perl写的一套MySQL故障切换方案,来保证数据库系统的高可用.在宕机的时间内(通常10-30秒内),完成故障切换,部署MHA,可避免主从一致性问题,节约购买新服务器的费用,不影响服务器性能,易安装,不改变现有部署. 还支持在线切换,从当前运行master切换到一个新的master上面,只需要很短的时间(0.5-2秒内),此时仅仅阻塞写操作,并不影响读操作,便于主机硬件维护. 在有高可用,数据一致性要求的系统上,MHA 提供了有用的功能,几乎无间断的满足维

第十一章 读写分离及分布式架构

atlas 实现读写分离 Atlas是由 Qihoo 360, Web平台部基础架构团队开发维护的一个基于MySQL协议的数据中间层项目. atlas 说明 Atlas是一个位于应用程序与MySQL之间中间件.在后端DB看来,Atlas相当于连接它的客户端,在前端应用看来,Atlas相当于一个DB.Atlas作为服务端与应用程序通讯,它实现了MySQL的客户端和服务端协议,同时作为客户端与MySQL通讯.它对应用程序屏蔽了DB的细节,同时为了降低MySQL负担,它还维护了连接池. atlas 部

MySQL 主从同步(1) - 概念和原理介绍 以及 主从/主主模式 部署记录

Mysql复制概念Mysql内建的复制功能是构建大型高性能应用程序的基础, 将Mysql数据分布到多个系统上,这种分布机制是通过将Mysql某一台主机数据复制到其它主机(slaves)上,并重新执行一遍来实现的.复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.主服务器将更新写入二进制日志文件,并维护文件的一个索引以跟踪日志循环.这些日志可以记录发送到从服务器的更新.当一个从服务器连接主服务器时,它通知主服务器从服务器在日志中读取的最后一次成功更新的位置.从服务器接收从那时起