来我的dou音 aa10246666, 看配套视频
一、实战环境
Primary 节点(node1) | mysql 8.0.28 | 10.211.55.9 |
Secondary1 节点(node2) | mysql 8.0.28 | 10.211.55.4 |
Secondary2 节点(node3) | mysql 8.0.28 | 10.211.55.6 |
ProxySQL 节点(node4) | 2.2.0 | 10.211.55.7 |
二、模拟超半数节点故障
我们模拟MGR集群中2个Secondary节点都因故障停掉了
1、先干掉一个节点,手动杀掉node2上的mysqld服务
找到mysqld进程号后,进行kill
root@node2:~# ps aux|grep mysqld
root 1155011 0.0 0.0 2064 1412 pts/0 S 10:52 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --user=mysql
mysql 1155290 1.3 28.6 1919508 581212 pts/0 Sl 10:52 0:01 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=node2.err --pid-file=node2.pid
root 1155950 0.0 0.0 5908 648 pts/0 S+ 10:54 0:00 grep mysqld
root@node2:~# kill -9 1155011 1155290
2、查看MGR集群状态
可以看到node2的状态由ONLINE变为UNREACHABLE后在集群中消失了
mysql> select member_host, member_state, member_role from performance_schema.replication_group_members;
+-------------------+-----------------------+------------------+
| member_host | member_state | member_role |
+------------------+------------------------+------------------+
| node1 | ONLINE | P