之前我一直用Seconds_behind_master来衡量主从的延迟,今天看到文档,才觉得多么不可靠!以下是官方文档的描述:

In essence, this field measures the time difference in seconds between the slave SQL thread and the slave I/O thread.

也就是说,这个变量是描述的是从库上I/O thread和SQL thread之间的时间差。

下面使用pt-heartbeat监控主从延迟:

【原理】:

1:在主库上创建一张heartbeat表,按照一定的时间频率更新该表的字段(把时间更新进去)。

2:连接到从库上检查复制的时间记录,和从库的当前系统时间进行比较,得出时间的差异。

【用法】:

pt-heartbeat [OPTIONS] [DSN] --update|--monitor|--check|--stop

【参数说明】

--check

检查从的延迟,检查一次就退出,除非指定了--recurse会递归的检查所有的从服务器。

--monitor

持续监控从的延迟情况。通过--interval指定的间隔时间,打印出从的延迟信息--daemonize

执行时,放入到后台执行

--file

打印--monitor最新的记录到指定的文件,很好的防止满屏幕都是数据的烦恼。

--frames

在--monitor里输出的[]里的记录段,默认是1m,5m,15m。可以指定1个,如:--frames=1s,多个用逗号隔开。可用单位有秒(s)、分钟(m)、小时(h)、天(d)。

--interval

检查、更新的间隔时间。默认是见是1s。最小的单位是0.01s,最大精度为小数点后两位,因此0.015将调整至0.02。

--log

开启daemonized模式的所有日志将会被打印到制定的文件中。

--update

更新主上的心跳表。

--replace

使用--replace代替--update模式更新心跳表里的时间字段,这样的好处是不用管表里是否有行。

--stop

停止运行该工具(--daemonize),在/tmp/目录下创建一个“pt-heartbeat-sentinel” 文件。后面想重新开启则需要把该临时文件删除,才能开启(--daemonize)。

--table

指定心跳表名,默认heartbeat。

--create-table

在主上创建心跳监控的表,如果该表不存在。可以自己建立,建议存储引擎改成memory。通过更新该表知道主从延迟的差距。

CREATE TABLE heartbeat (

ts varchar(26) NOT NULL,

server_id int unsigned NOT NULL PRIMARY KEY,

file varchar(255) DEFAULT NULL, -- SHOW MASTER STATUS

position bigint unsigned DEFAULT NULL, -- SHOW MASTER STATUS

relay_master_log_file varchar(255) DEFAULT NULL, -- SHOW SLAVE STATUS

exec_master_log_pos bigint unsigned DEFAULT NULL -- SHOW SLAVE STATUS

);

【使用案例】

主库:10.10.101.11  端口3306

从库:10.10.101.11  端口3307

1、在主库上执行命令:

/usr/local/bin/pt-heartbeat -D test --create-table -h 10.10.101.11 -P 3306 -u root -p '*******' --update --daemonize

-D:表示受监控的数据库

这时,主库中已经创建了下面的表heartbeat:

mysql> show tables;

+----------------+

| Tables_in_test |

+----------------+

| checksums |

| heartbeat |

+----------------+

2 rows in set (0.00 sec)

mysql> select * from heartbeat;

+----------------------------+-----------+------------------+----------+-----------------------+---------------------+

| ts | server_id | file | position | relay_master_log_file | exec_master_log_pos |

+----------------------------+-----------+------------------+----------+-----------------------+---------------------+

| 2015-11-02T15:01:45.001340 | 113306 | mysql-bin.000021 | 1240408 | mysql-bin.000021 | 120 |

+----------------------------+-----------+------------------+----------+-----------------------+---------------------+

1 row in set (0.00 sec)

2、在从库上进行延迟监控:

#执行一次就退出

[root@10-10-101-11 backup]# /usr/local/bin/pt-heartbeat -D test  -h 10.10.101.11 -P 3307 -uroot -p'*******' --check

0.00

[root@10-10-101-11 backup]#

持续监控:

[root@10-10-101-11 backup]# /usr/local/bin/pt-heartbeat -D test -h 10.10.101.11 -P 3307 -uroot -p'*******' --monitor

0.00s [ 0.00s, 0.00s, 0.00s ]

0.00s [ 0.00s, 0.00s, 0.00s ]

0.00s [ 0.00s, 0.00s, 0.00s ]

0.00s [ 0.00s, 0.00s, 0.00s ]

0.00s [ 0.00s, 0.00s, 0.00s ]

0.00s [ 0.00s, 0.00s, 0.00s ]

0.00s [ 0.00s, 0.00s, 0.00s ]

0.00s [ 0.00s, 0.00s, 0.00s ]

0.00s [ 0.00s, 0.00s, 0.00s ]

0.00s [ 0.00s, 0.00s, 0.00s ]

0.00s [ 0.00s, 0.00s, 0.00s ]

0.00s [ 0.00s, 0.00s, 0.00s ]

0.00s [ 0.00s, 0.00s, 0.00s ]

mysql pt_mysql管理工具之pt相关推荐

  1. 03:MySQL图形管理工具

     前言: 本系列博客主要参考黑马程序员视频教程,仅供学习使用,整理不易转载请注明出处,多谢(*^▽^*)~. 视频教程地址连接: 2022黑马程序员最新MySQL知识精讲+mysql实战案例_零基础m ...

  2. mysql实例管理工具巨杉_实例管理工具_操作_MySQL实例_关系型数据库实例_文档中心_SequoiaDB巨杉数据库...

    实例管理工具 sdb_mysql_ctl 是 MySQL 实例组件的管理工具.用户通过 sdb_mysql_ctl 既可以初始化.启动和停止实例,也可以修改实例的引擎配置参数. 参数说明 参数 描述 ...

  3. 推荐几款炫酷的 MySQL 可视化管理工具!好用到爆!!

    MySQL 的管理维护工具非常多,除了系统自带的命令行管理工具之外,还有许多其他的图形化管理工具,工具好用是一方面,个人的使用习惯也很重要,这里介绍 13 款 MySQL 图形化管理工具,供大家参考. ...

  4. 9 款炫酷的 MySQL 可视化管理工具!好用到爆!!

    点击上方"Java基基",选择"设为星标" 做积极的人,而不是积极废人! 每天 14:00 更新文章,每天掉亿点点头发... 源码精品专栏 原创 | Java ...

  5. 13 款炫酷的 MySQL 可视化管理工具!好用到爆!!

    MySQL 的管理维护工具非常多,除了系统自带的命令行管理工具之外,还有许多其他的图形化管理工具,工具好用是一方面,个人的使用习惯也很重要,这里介绍 13 款 MySQL 图形化管理工具,供大家参考. ...

  6. mysql免费管理工具2017_15个MySql(其他数据库)管理工具

    工欲善其事,必先利其器.几乎每个开发人员都有最钟爱的 MySQL 管理工具,它帮助开发人员在许多方面支持包括 PostgreSQL,MySQL,SQLite,Redis,MongoDB 等在内的多种数 ...

  7. mysql 服务器 管理工具_Mysql15款最佳管理工具

    [IT168 评论]如今,Web应用程序的响应速度是成功的关键法宝之一.它与用户互动,用户对网站的看法,甚至谷歌网站排名情况都有着密不可分的关系.数据库性能是响应速度最重要的因素之一,一旦出错,所有程 ...

  8. 13 款炫酷的 MySQL 可视化管理工具

    MySQL 的管理维护工具非常多,除了系统自带的命令行管理工具之外,还有许多其他的图形化管理工具,工具好用是一方面,个人的使用习惯也很重要,这里介绍 13 款 MySQL 图形化管理工具,供大家参考. ...

  9. Mysql 的管理工具Sequel Pro

    服务器和本地都是Mysql数据库 使用的工具:Sequel Pro(专门管理Mysql的工具) 操作系统Mac OS 10.12 Sequel Pro简介 Sequel Pro是一款管理Mysql的工 ...

  10. mysql rpl_MySQL管理工具MySQL Utilities — mysqlrplcheck(44)

    mysqlrplcheck  工具是用来检查复制的先决条件的.这些检查的设计或者说是测试,是用来确保复制的健康.测试的内容有: 在主上是否启用了二进制? 是否有排除某些二进制(如有*_do_db 或 ...

最新文章

  1. python with 打开多个文件
  2. OpenYurt入门-在树莓派上玩转OpenYurt
  3. ubuntu更新python的指令_ubuntu下python模块的库更新(转载)
  4. 《python cookbook》chapter 1
  5. python操作sqlite数据库_Python操作Sqlite正确实现方法解析
  6. arcgis 4.x graphicslayer点击事件_ArcGis中X、Y值的巧用方法小记
  7. C#中缓存的简单方法及使用Sql设置缓存依赖项
  8. python调试利器pysnooper实践使用分析
  9. AutoRunner录制过程中发现对象录制不了
  10. 华为 服务器 驱动 linux,华为服务器SAS控制器驱动问题
  11. aruba交换机配置命令_Aruba 无线交换机基本操作命令
  12. 解决新版chrome浏览器SameSite属性cookie拦截问题
  13. 【CSS】关于 z-index,你可能一直存在误区
  14. matlab cody学习笔记 day18
  15. 看图说话之网络2008
  16. 可以ping通外网,ping不通内网,同时可以Ping网关,但是外部ping不到IP
  17. Android电话拦截及拦截提示音的实现
  18. 【CVPR 2020】蒸馏篇(四):Online Knowledge Distillation via Collaborative Learning
  19. 解决Can't connect to HTTPS URL because the SSL module is not available.问题
  20. kubernetes组件_Service_普通Service和无头Service

热门文章

  1. linux  指令 备注
  2. Android 第3方控件一览表
  3. 为label或者textView添加placeHolder
  4. Extjs项目实战视频教程
  5. 迪杰斯特拉算法c语言实现
  6. struts2学到屎挫死-学习笔记(4)
  7. WMI 查询分析工具更新
  8. python中pygame放入图_python使用PyGame绘制图像并保存为图片文件的方法
  9. 两个字符串日期怎么比较大小_面对家中两个孩子的争抢哭闹,那家长应该怎么处理才比较好呢?...
  10. Audio / Video Playback