关于升级:技术分享-MGR-单主模式组内滚动升级
作者:李鹏博 爱可生 DBA 团队成员,次要负责 MySQL 故障解决和 SQL 审核优化。对技术执着,为客户负责。 本文起源:原创投稿 *爱可生开源社区出品,原创内容未经受权不得随便应用,转载请分割小编并注明起源。 MySQL 从 5.7 开始反对 MGR ,并一直地进行改良与欠缺,比方从 8.0.14 新增了 group_replication_consistency 参数用于配置集群一致性;从 8.0.16 新增 group_replication_consistency 参数来反对 auto-rejoin 性能,从 8.0.17 开始反对 clone 插件并用于 MGR 的分布式复原。本文将介绍如何从 MySQL 5.7.25 单主模式的 MGR 组内滚动降级到 MySQL 8.0.26 。 MGR 能够离线降级,也能够在线降级,咱们通常都会抉择在线降级。而在线降级官网提供了3种形式:组内滚动降级、滚动迁徙降级、滚动反复降级。咱们这里应用最简略疾速的组内滚动降级形式。 组内滚动降级的形式就是在一个 MGR 组内,其中的每个实例都顺次从组中删除、降级,而后重新加入组中。这种形式比拟适宜单主模式。而对于多主模式下的组,因为在组内滚动降级期间主节点的数量会缩小,从而会导致写可用性升高,这是因为如果一个成员退出一个组时,它运行的 MySQL 服务器版本高于现有组成员运行的最低版本,它会主动放弃只读模式( super_read_only=ON ),从 MySQL 8.0.17 开始,当所有成员都降级到雷同的版本时,它们都会主动更改回读写模式;而对于之前的版本,则须要在每个成员上手动设置 super_read_only=OFF 来将实例改回读写模式。 以下将大抵介绍降级的步骤: 一. 确定MGR模式和版本1. 确认MGR模式show variables like '%group_replication_single_primary_mode%';2. 确认主节点select * from performance_schema.replication_group_members;SHOW STATUS LIKE 'group_replication_primary_member';3. 确认节点数据库版本MySQL 5.7须要每个独自确认select @@version;留神:后面的1. 2. 3. 步骤在 MySQL 8 外面可只通过一条语句确认: ...