乐趣区

关于mysql:『叶问』41三节点的MGR集群有两个节点宕机后还能正常工作吗

『叶问』#41,三节点的 MGR 集群,有两个节点宕机后还能失常工作吗

每周学点 MGR 常识。

1. 三节点的 MGR 集群,有两个节点宕机后还能失常工作吗

要看具体是哪种状况。

如果两个节点是失常敞开的话,则会向 MGR 集群发送退出信号,这种状况下,这两个节点属于失常退出,最初仅剩的节点会被晋升为 Primary 角色,还能够失常工作,容许对其进行读写,只是此时没有可用性冗余了。当其余节点再次启动并退出集群后,又能恢复正常服务。

如果是因为网络故障,或者 mysqld 过程产生 oom、或被误杀、或其余起因退出了,则这些节点会被标识为 UNREACHABLE 状态,期待直到 group_replication_member_expel_timeout 时长(单位:秒)后这个节点才会正式退出集群。在这种状况下,一旦超过多数派节点处于 UNREACHABLE 状态时,则整个集群不可用,无奈提供读写服务。这种状况下,须要把剩下的节点重启 MGR 服务能力复原。

失常状况下,不要把 group_replication_member_expel_timeout 值调整太大,并且 MGR 的事务一致性级别尽量不要抉择 AFTER 模式,以防呈现整个集群服务不可用的问题,具体参见这篇文章:为什么 MGR 一致性模式不举荐 AFTER。

2. MGR 能够像主从复制那样只启动两个节点吗

MGR 在初始化启动时,是能够只启动两个节点,甚至只有一个节点,然而这样就失去 MGR 的意义了。因为只有少于三个节点,就没方法进行多数派投票,当产生网络故障等状况时,无奈投票确认哪些节点该被踢出集群。

Enjoy GreatSQL :)

文章举荐:

GreatSQL MGR FAQ
https://mp.weixin.qq.com/s/J6…

万答 #12,MGR 整个集群挂掉后,如何能力主动选主,不必手动干涉
https://mp.weixin.qq.com/s/07…

『2021 数据技术嘉年华·ON LINE』:《MySQL 高可用架构演进及实际》
https://mp.weixin.qq.com/s/u7…

一条 sql 语句慢在哪之抓包剖析
https://mp.weixin.qq.com/s/AY…

万答 #15,都有哪些状况可能导致 MGR 服务无奈启动
https://mp.weixin.qq.com/s/in…

技术分享 | 为什么 MGR 一致性模式不举荐 AFTER
https://mp.weixin.qq.com/s/rN…

对于 GreatSQL

GreatSQL 是由万里数据库保护的 MySQL 分支,专一于晋升 MGR 可靠性及性能,反对 InnoDB 并行查问个性,是实用于金融级利用的 MySQL 分支版本。

Gitee:
https://gitee.com/GreatSQL/Gr…

GitHub:
https://github.com/GreatSQL/G…

Bilibili:
https://space.bilibili.com/13…

微信 &QQ 群:
可搜寻增加 GreatSQL 社区助手微信好友,发送验证信息“加群”退出 GreatSQL/MGR 交换微信群

QQ 群:533341697
微信小助手:wanlidbc

本文由博客一文多发平台 OpenWrite 公布!

退出移动版