MySQL社区

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
查看: 3862|回复: 3

[同步(Replication)] 尽可能准确的测量从服务器延时情况

[复制链接]
发表于 2013-4-23 09:57:09 | 显示全部楼层 |阅读模式
测量从服务器延时
(show slave status,seconds_behind_master从理论上显示了从服务器的延迟,事实上它并不总是准确的,原因:

  • 从服务器计算seconds_behind_master的方式是比较服务器当前的时间戳和二进制日志记录的时间戳,因此只有在处理查询的时候才能报告延迟。

  • 如果从服务器进程没有运行,从服务器通常报告NULL

  • 一些错误(比如,主、从服务器之间的max_allowed_packet设置不匹配,或者不稳定的网络)能中断复制,并且/或者终止从服务器线程,但是seconds_behind_master只会报告0,而不是指出错误。

  • 即使从服务器进程正在运行,有时它也不能计算延迟。如果发生了这种情况,从服务器会报告0NULL
  • 非常长的事务能导致报告的延迟发生波动。例如,如果有事务更新了数据,在一小时内一直保持开启,然后进行提交,更新就会在实际发生之后的一小时才进入日志,它会短暂的报告比主服务器落后了一小时,然后延迟就很快变成0.
  • 如果分布服务器落后了,并且有自己的从服务器,从服务器和分布主服务器保持了一致,即使相对于最终的服务器仍然有延迟,报告的值还是0。)

(解决这些问题的办法就是忽略seconds_behind_master,并且使用可以直接观测的测量的工具来测量延迟。一个好的解决办法就是heartbeat record,它是主服务器上每秒更新一次的时间戳。复制动率。 Maatkit里面的mk-heartbeat。)
(以上延迟指标 都不能表示从服务器需要多长时间才能赶上主服务器。依赖于很多因素。)

这个工具现在叫Percona Toolkit
http://www.mysqlpub.com/forum.php?mod=viewthread&tid=33457
发表于 2013-4-23 10:35:52 | 显示全部楼层
这些都是在linux下运行的工具吧
有没有在win2003下运行的呢?
 楼主| 发表于 2013-4-23 16:26:46 | 显示全部楼层
没这么好的,你可以再找找。
发表于 2013-4-23 21:06:15 | 显示全部楼层
好帖,
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|申请友链|小黑屋|Archiver|手机版|MySQL社区 ( 京ICP备07012489号   
联系人:周生; 联系电话:13911732319

GMT+8, 2024-3-29 18:04 , Processed in 0.070005 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表