本节介绍如何监控读副本、查看拓扑结构等。
有关
方法的详细信息,请参阅 第 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"
},