该
performance_schema.replication_group_members
表用于监视作为组成员的不同服务器实例的状态。只要有视图更改,表中的信息就会更新,例如当新成员加入时组的配置动态更改时。届时,服务器会交换一些元数据以同步自身并继续协同合作。该信息在作为复制组成员的所有服务器实例之间共享,因此可以从任何成员查询有关所有组成员的信息。此表可用于获取复制组状态的高级视图,例如通过发出:
SELECT * FROM performance_schema.replication_group_members;
+---------------------------+--------------------------------------+-------------+-------------+--------------+-------------+----------------+----------------------------+
| CHANNEL_NAME | MEMBER_ID | MEMBER_HOST | MEMBER_PORT | MEMBER_STATE | MEMBER_ROLE | MEMBER_VERSION | MEMBER_COMMUNICATION_STACK |
+---------------------------+--------------------------------------+-------------+-------------+--------------+-------------+----------------+----------------------------+
| group_replication_applier | d391e9ee-2691-11ec-bf61-00059a3c7a00 | example1 | 4410 | ONLINE | PRIMARY | 8.0.27 | XCom |
| group_replication_applier | e059ce5c-2691-11ec-8632-00059a3c7a00 | example2 | 4420 | ONLINE | SECONDARY | 8.0.27 | XCom |
| group_replication_applier | ecd9ad06-2691-11ec-91c7-00059a3c7a00 | example3 | 4430 | ONLINE | SECONDARY | 8.0.27 | XCom |
+---------------------------+--------------------------------------+-------------+-------------+--------------+-------------+----------------+----------------------------+
3 rows in set (0.0007 sec)
基于此结果,我们可以看到该组由三名成员组成。表中显示的是每个成员的
server_uuid
,以及成员的主机名和端口号,客户端使用这些来连接到它。该MEMBER_STATE
列显示
第 18.4.2 节“组复制服务器状态”之一,在这种情况下,它显示该组中的所有三个成员都是
ONLINE
,并且该MEMBER_ROLE
列显示有两个辅助节点和一个主节点。因此,该组必须以单主模式运行。当您升级组并组合运行不同 MySQL 版本的成员时,该
MEMBER_VERSION
列可能很有用。这MEMBER_COMMUNICATION_STACK
列显示用于该组的通信堆栈。
有关该MEMBER_HOST
值及其对分布式恢复过程的影响的更多信息,请参阅
第 18.2.1.3 节,“分布式恢复的用户凭证”。