监控复制状态企业版
dbms.cluster.statusCheck() 过程可用于监控集群数据库中的复制能力。在大多数情况下,这意味着集群数据库处于可写状态。该过程可识别集群数据库中哪些成员是最新的,并能够参与成功的复制。因此,它对于确定集群数据库的容错能力非常有用。此外,您可以使用该过程来确定集群中集群数据库的领导者(Leader)。
|
该过程在集群内复制一个虚拟事务,并验证该事务能否被成功复制和应用。由于状态检查不会复制实际的业务事务,因此它不能完全保证写可用性,因为写入路径中的其他因素(例如数据库问题)可能会阻塞事务。不过,健康的状态检查结果在大多数情况下通常预示着数据库处于写可用状态。 |
集群状态检查
输入参数
| 名称 | 类型 | 描述 |
|---|---|---|
|
List<String> |
需要运行状态检查的数据库。提供空列表将对服务器上所有集群化数据库运行状态检查,即它不会在单机或从属(Secondary)数据库上运行。 |
|
整数 |
指定标记复制不成功之前的最大等待时间。默认值为 1000 毫秒。 |
返回参数
该过程为所有已请求数据库的所有主(Primary)成员返回一行,其中每一行包含:
| 名称 | 类型 | 描述 |
|---|---|---|
|
字符串 |
复制了 |
|
字符串 |
服务器的 UUID,该服务器参与或未参与 |
|
字符串 |
服务器的友好名称,如果未设置名称,则为其 UUID。 |
|
字符串 |
服务器的 Bolt 端口地址。 |
|
布尔值 |
指示服务器(运行该过程的服务器)是否可以复制事务。 |
|
字符串 |
每个主成员的状态。 |
|
字符串 |
每个主成员所感知的领导者(Leader)的服务器 ID。 |
|
整数 |
每个主成员所感知的领导者的任期(Term)。如果成员报告的领导者不同,则应信任任期最高的那个。 |
|
布尔值 |
服务器是否为请求者。 |
|
字符串 |
包含任何错误消息(如果存在)。错误的一个示例是请求的一个或多个数据库在请求者上不存在。 |
replicationSuccessful 的可能值
-
TRUE— 如果此服务器在给定的超时时间内成功将虚拟事务复制到大多数集群成员。 -
FALSE— 如果未能在超时时间内完成复制。该值在列层面上是统一的。复制失败可能表示集群中存在实际问题(例如没有领导者),或者此服务器在应用更新方面滞后太远而无法进行复制。
示例
运行状态检查
当针对服务器运行集群状态检查时,预计会得到类似于以下内容的输出
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| database | serverId | serverName | address | replicationSuccessful | memberStatus | recognisedLeader | recognisedLeaderTerm | requester | error |
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| "neo4j" | "d3fe2e6a-494d-4ab8-81b1-7de2ce31ce11" | "d3fe2e6a-494d-4ab8-81b1-7de2ce31ce11" | "localhost:7682" | TRUE | "APPLYING" | "565130e8-b8f0-41ad-8f9d-c660bd8d5519" | 4 | FALSE | NULL |
| "neo4j" | "565130e8-b8f0-41ad-8f9d-c660bd8d5519" | "565130e8-b8f0-41ad-8f9d-c660bd8d5519" | "localhost:7681" | TRUE | "APPLYING" | "565130e8-b8f0-41ad-8f9d-c660bd8d5519" | 4 | TRUE | NULL |
| "neo4j" | "58c70f4b-910d-4d0e-b0f2-3084554079ec" | "58c70f4b-910d-4d0e-b0f2-3084554079ec" | "localhost:7683" | TRUE | "APPLYING" | "565130e8-b8f0-41ad-8f9d-c660bd8d5519" | 4 | FALSE | NULL |
| "system" | "565130e8-b8f0-41ad-8f9d-c660bd8d5519" | "565130e8-b8f0-41ad-8f9d-c660bd8d5519" | "localhost:7681" | TRUE | "APPLYING" | "d3fe2e6a-494d-4ab8-81b1-7de2ce31ce11" | 1 | TRUE | NULL |
| "system" | "58c70f4b-910d-4d0e-b0f2-3084554079ec" | "58c70f4b-910d-4d0e-b0f2-3084554079ec" | "localhost:7683" | TRUE | "APPLYING" | "d3fe2e6a-494d-4ab8-81b1-7de2ce31ce11" | 1 | FALSE | NULL |
| "system" | "d3fe2e6a-494d-4ab8-81b1-7de2ce31ce11" | "d3fe2e6a-494d-4ab8-81b1-7de2ce31ce11" | "localhost:7682" | TRUE | "APPLYING" | "d3fe2e6a-494d-4ab8-81b1-7de2ce31ce11" | 1 | FALSE | NULL |
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+