本节介绍如何监控读副本、查看拓扑结构等。
有关 方法的详细信息,请参阅 第 7.7 节“监控 InnoDB 集群”。Cluster.status()
读副本信息列在每个源的 readReplicas 部分中。在以下示例中,集群主节点 host1:4100 是三个读副本 host4:4110、host5:4120 和 host6:4130 的复制源。
"topology": {
"host1:4100": {
"address": "host1:4100",
"memberRole": "PRIMARY",
"mode": "R/W",
"readReplicas": {
"RReplica1": {
"address": "host4:4110",
"role": "READ_REPLICA",
"status": "ONLINE",
"version": "8.1.0"
},
"RReplica2": {
"address": "host5:4120",
"role": "READ_REPLICA",
"status": "ONLINE",
"version": "8.1.0"
},
"RReplica3": {
"address": "host6:4130",
"role": "READ_REPLICA",
"status": "ONLINE",
"version": "8.1.0"
}
},
"replicationLag": "applier_queue_applied",
"role": "HA",
"status": "ONLINE",
"version": "8.1.0"
},
读副本按在将它们添加到集群时定义的标签列出,或者如果未提供标签,则按 host:port 列出。
读副本特定的字段如下所示
-
对于
Cluster.status()address:读副本的地址。role:READ_REPLICA。-
status:包含以下状态之一ONLINE:复制通道已连接并正在运行。CONNECTING:复制通道正在连接。OFFLINE:复制通道已正常停止。ERROR:由于复制错误导致复制通道停止。UNREACHABLE:MySQL Shell 无法连接到读副本。
version:MySQL 服务器版本。instanceErrors:如果发生至少一个错误,则列出诊断错误。
-
对于
Cluster.status({extended: 1})applierStatus:应用器线程状态。applierThreadState:应用器线程当前状态。applierWorkerThreads:应用器工作线程数量。receiverStatus:接收器线程状态。receiverThreadState:接收器线程的当前状态。replicationLag:复制延迟。replicationSources:列出读副本的复制源,按权重排序。或者,如果读副本配置为从主节点复制,则为PRIMARY,如果读副本配置为从从节点复制,则为SECONDARY。replicationSsl:列出当前 SSL 密码和 SSL 版本(如果已启用)。
-
对于
Cluster.status({extended: 2})applierQueuedTransactionSet:应用器队列 GTID 集。applierQueuedTransactionSetSize:应用器队列大小。coordinatorState:协调器状态。coordinatorThreadState:协调器线程的当前状态。receiverTimeSinceLastMessage:I/O 线程收到上一条消息以来的时间。replicationSources:按权重列出读副本的配置复制源的 IP 地址和端口号。
-
对于
Cluster.status({extended: 3})-
options:以下配置选项的数组delay:复制延迟。heartbeatPeriod:心跳间隔。retryCount:重试次数。connectRetry:connectRetry
-
返回读副本的以下内容Cluster.describe()
address:读副本的地址。label:创建读副本时提供的标签。replicationSources:读副本的复制源,PRIMARY 或 SECONDARY。role:READ_REPLICA
{
"address": "127.0.0.1:4110",
"label": "RReplica1",
"replicationSources": [
"PRIMARY"
],
"role": "READ_REPLICA"
},
{
"address": "127.0.0.1:4120",
"label": "RReplica2",
"replicationSources": [
"PRIMARY"
],
"role": "READ_REPLICA"
},