MGR宕机后的重启,分两种情况
整个MGR集群宕机
1.首先将所有实例开启,例如
mysqld_safe --defaults-file=/etc/my.cnf1 --user=mysql &
2.然后连接上一个实例,执行以下操作,引导并开启组复制
set global group_replication_bootstrap_group=on;
start group_replication;
set global group_replication_bootstrap_group=off;
如果是单主模式,此实例即是可读可写实例。
之所以要先开启group_replication_bootstrap_group,然后关闭group_replication_bootstrap_group,是因为start group_replication
前需要重新引导组复制,引导并开启组复制之后,将group_replication_bootstrap_group关闭是为了避免实例重启后又重新引导了一个组复制,导致复制异常。
3.最后连接上其他实例,开启组复制即可,不需要设置group_replication_bootstrap_group参数
start group_replication
MGR集群中某个节点宕机
如果是单主模式,某个节点宕机,如果该节点是可读可写节点,那么可写权限会漂移到其他节点,如果该节点只是个可读节点,那么宕机也不影响集群运行;
多主模式下某个节点宕机更不会影响MGR集群的运行;
所以某个节点宕机或者多个节点宕机,但集群中还存在可读可写的节点,那么重启节点实例后,直接开启MGR加入复制集群即可
start group_replication