检测集群中的复制延迟

当群集中一台服务器上的数据库过期而无法复制到另一台服务器时,将在服务器日志中创建条目。一组集群货币统计信息也可用来帮助主动发现数据库复制延迟。

过程

四小时或更长时间的复制延迟将报告到服务器日志中。要查找这些条目,请在日志中搜索字符串 ReplCurrency。以下是 ReplCurrency 日志条目示例:
[1240:0004-124C] ReplCurrency Source="discussion.nsf", Dest=CN=Server2/O=Renovations (Q:3) discussion.nsf, UpdateToRepl2="07/25/2018 03:12:04 AM", LastRepl="07/24/2018 08:03:28 PM", TimeDiff= 300 min, TimeDiff2=728 min 
1. ReplCurrency 日志条目中报告的信息
输出字段 说明
ReplCurrency 指示至少四小时的复制延迟。
源代码 当前服务器上已过期而无法进行复制的数据库。
Dest 目标服务器。
Q:n 用于此数据库的目标副本的 SCR 队列(共 4 个)。如果到同一目标服务器的同一目标队列有许多数据库,则有问题的数据库可能会减慢该队列的复制。
UpdateToRep 目标服务器上数据库的最后更改时间。
LastRepl 目标服务器上数据库的最后复制时间。
TimeDiff 自上次在当前服务器上更改数据库以来的分钟数。
TimeDiff2 自当前服务器上的数据库最后一次复制到目标服务器以来的分钟数。如果大于 5000,就会显示文本 警告= 复制超过 5000 分钟
对数据库的重复 ReplCurrency 警报可以指示数据库损坏或复制问题。在这种情况下,请按照以下步骤进行故障诊断:
  1. 检查复制历史记录,以确认警告有效。
  2. 强制执行手动复制,以查看否存在任何复制或数据库损坏问题。
注: 如果在新副本与所有其他集群副本完全复制之前运行复制货币检查,则在创建新副本时可能会看到数据库的 ReplCurrency 日志条目。初始复制完成后,日志条目将停止生成。
有几种统计信息可用于报告数据库复制的延迟。在集群中服务器的控制台上输入以下命令以查看统计信息:
show stat replica.cluster.currency.*

一组货币统计信息报告数据库与集群中的其他服务器最后一次进行复制的时间范围。统计信息按服务器分组。

例如,以下输出显示该服务器与一分钟内复制的服务器 Mail2/Renovations 共有的所有98个副本:
[00134C:000008-00000000000004AC]   Replica.Cluster.Currency.Mail2/Renovations.Outside8Hours = 0
[00134C:000008-00000000000004AC]   Replica.Cluster.Currency.Mail2/Renovations.Uninitialized = 0
[00134C:000008-00000000000004AC]   Replica.Cluster.Currency.Mail2/Renovations.Within15Min = 0
[00134C:000008-00000000000004AC]   Replica.Cluster.Currency.Mail2/Renovations.Within1Hour = 0
[00134C:000008-00000000000004AC]   Replica.Cluster.Currency.Mail2/Renovations.Within1Min = 98
[00134C:000008-00000000000004AC]   Replica.Cluster.Currency.Mail2/Renovations.Within4Hours = 0
[00134C:000008-00000000000004AC]   Replica.Cluster.Currency.Mail2/Renovations.Within5Min = 0
[00134C:000008-00000000000004AC]   Replica.Cluster.Currency.Mail2/Renovations.Within8Hours = 0