基于案例分析 MySQL Group Replication 的故障检测流程( 二 )


2022-07-31T13:03:07.690416-00:00 0 [Warning] [MY-011493] [Repl] Plugin group_replication reported: 'Member with address 192.168.244.10:3306 has become unreachable.'2022-07-31T13:03:07.690492-00:00 0 [Warning] [MY-011493] [Repl] Plugin group_replication reported: 'Member with address 192.168.244.20:3306 has become unreachable.'2022-07-31T13:03:07.690504-00:00 0 [ERROR] [MY-011495] [Repl] Plugin group_replication reported: 'This server is not able to reach a majority of members in the group. This server will now block all updates. The server will remain blocked until contact with the majority is restored. It is possible to use group_replication_force_members to force a new group membership.'mysql> select member_id,member_host,member_port,member_state,member_role from performance_schema.replication_group_members;+--------------------------------------+----------------+-------------+--------------+-------------+| member_id                            | member_host    | member_port | member_state | member_role |+--------------------------------------+----------------+-------------+--------------+-------------+| 207db264-0192-11ed-92c9-02001700754e | 192.168.244.10 |        3306 | UNREACHABLE  | PRIMARY     || 2cee229d-0192-11ed-8eff-02001700f110 | 192.168.244.20 |        3306 | UNREACHABLE  | PRIMARY     || 4cbfdc79-0192-11ed-8b01-02001701bd0a | 192.168.244.30 |        3306 | ONLINE       | PRIMARY     |+--------------------------------------+----------------+-------------+--------------+-------------+3 rows in set (0.00 sec)从 node3 的角度来看 , 此时 node1 , node2 处于 UNREACHABLE 状态 。
三个节点 , 只有一个节点处于 ONLINE 状态 , 不满足组复制的多数派原则 。此时 , node3 只能查询 , 写操作会被阻塞 。
mysql> select * from slowtech.t1 where id=1;+----+------+| id | c1   |+----+------+|  1 | a    |+----+------+1 row in set (0.00 sec)mysql> delete from slowtech.t1 where id=1;阻塞中 。。。又过了 16s(这里的 16s , 实际上与 group_replication_member_expel_timeout 参数有关) , node1、node2 会将 node3 驱逐出(expel)集群 。此时 , 集群只有两个节点组成 。
看看 node1 的日志及集群状态 。
2022-07-31T13:03:23.576960-00:00 0 [Warning] [MY-011499] [Repl] Plugin group_replication reported: 'Members removed from the group: 192.168.244.30:3306'2022-07-31T13:03:23.577091-00:00 0 [System] [MY-011503] [Repl] Plugin group_replication reported: 'Group membership changed to 192.168.244.10:3306, 192.168.244.20:3306 on view 16592724636525403:3.'mysql> select member_id,member_host,member_port,member_state,member_role from performance_schema.replication_group_members;+--------------------------------------+----------------+-------------+--------------+-------------+| member_id                            | member_host    | member_port | member_state | member_role |+--------------------------------------+----------------+-------------+--------------+-------------+| 207db264-0192-11ed-92c9-02001700754e | 192.168.244.10 |        3306 | ONLINE       | PRIMARY     || 2cee229d-0192-11ed-8eff-02001700f110 | 192.168.244.20 |        3306 | ONLINE       | PRIMARY     |+--------------------------------------+----------------+-------------+--------------+-------------+2 rows in set (0.00 sec)

经验总结扩展阅读