找到当前mysql group replication 环境的primary结点

时间:2024-09-22 10:35:14

一、起原:

  mysql group replication 有两种模式、第一种是single primary 也就是说单个primary 、这个模式下只有这一个主可以写入;

  第二种是multi primary 模式、这个模式下所有的结点都能写入。所以询查primary 主要是对第一种模式有意义。

二、找到primary 结点的uuid:

show global status like 'group_replication_primary_member';
+----------------------------------+--------------------------------------+
| Variable_name | Value |
+----------------------------------+--------------------------------------+
| group_replication_primary_member | dd414aae-c794-11e7-9c9f-9a17854b700d |
+----------------------------------+--------------------------------------+

三、找到uuid对应的host:

mysql> select * from performance_schema.replication_group_members;
+---------------------------+--------------------------------------+-------------+-------------+--------------+
| CHANNEL_NAME | MEMBER_ID | MEMBER_HOST | MEMBER_PORT | MEMBER_STATE |
+---------------------------+--------------------------------------+-------------+-------------+--------------+
| group_replication_applier | dd361a61-c794-11e7-b007-1e1b3511358e | mtsl18 | 3306 | ONLINE |
| group_replication_applier | dd414aae-c794-11e7-9c9f-9a17854b700d | mtls17 | 3306 | ONLINE |
| group_replication_applier | dd94cba0-c794-11e7-83fd-8a7c439b72d9 | mtls19 | 3306 | ONLINE |
+---------------------------+--------------------------------------+-------------+-------------+--------------+
3 rows in set (0.00 sec)

结论:

  第二步中找到primary库的uuid为dd414aae-c794-11e7-9c9f-9a17854b700d、然而在第三步中找到这个uuid对应的就是

  mtls17这个主机名。所以当前的priamry 成员就是mtls17

----