如何配置MySQL的Group Replication组复制构建金融级高可用MGR集群

老枫同学_3638

老枫同学_3638

2026-06-06

1015人浏览

原创

金融级高可用需配置group_replication_consistency='after'(session级)、sync_binlog=1、innodb_flush_log_at_trx_commit=1,禁用多主,严格校验member_state=online后路由读请求。

如何配置mysql的group replication组复制构建金融级高可用mgr集群

金融级高可用不是靠节点数量堆出来的,而是由几个关键配置共同约束出来的结果。核心在于:写事务必须全局生效后才返回成功,读请求必须路由到已同步数据的节点,且整个过程不能因网络抖动误判故障。

必须启用的强一致性参数

单主模式下,group_replication_consistency = 'AFTER' 是金融场景的硬性开关,它确保事务在所有在线节点完成回放后才向客户端返回成功。这个值必须设为 SESSION 级(在应用连接建立后执行 SET SESSION group_replication_consistency = 'AFTER'),不能设 GLOBAL,否则只读查询也会被阻塞等待回放,拖垮报表类业务。

配合以下两项持久化配置,防止主节点宕机丢事务:

  • sync_binlog = 1:每次事务提交都强制刷 binlog 到磁盘
  • innodb_flush_log_at_trx_commit = 1:每次事务提交都强制刷 redo log 到磁盘

严格限制多主模式的使用

金融系统应禁用多主模式。MGR 不会合并冲突,而是直接回滚后到达的事务并报错 ER_GROUP_REPLICATION_CONFLICTING_TRANSACTION。实测冲突率约 3%,但金融要求的是 0% 可观测冲突。

即使业务层做了幂等或重试,也无法规避“两次扣款一次失败”的中间态——因为冲突发生在事务提交前,应用无法感知真实执行顺序。若架构上必须多写入口,应通过分库分表+路由规则,将同一账户的所有操作固定到单一节点,这本质上仍是逻辑单主。

MySQL
MySQL

编写正确的MySQL查询,避免字符集、索引和锁方面的常见陷阱。

下载

节点健康判断与驱逐策略

group_replication_member_expel_timeout 不是越小越好。默认 5 秒,若设为 2 秒,在公网或跨机房环境下极易因瞬时抖动误判节点失联,引发脑裂或频繁主从切换。

建议设为 10–15 秒,并配合监控 performance_schema.replication_group_member_stats 表中的 MEMBER_STATEMEMBER_ROLE 字段变化频率。真正影响 RTO 的是 group_replication_autorejoin_tries(自动重连次数)和选举耗时,不是驱逐阈值。

读请求路由必须校验节点状态

不能把读请求发给任意节点。必须先查 performance_schema.replication_group_members,确认目标节点的 MEMBER_STATE = 'ONLINE'MEMBER_ROLE = 'SECONDARY'(单主模式下)才可路由读流量。

若跳过该检查,可能读到尚未回放完成的中继日志,出现“转账后查不到余额”的问题。建议在中间件(如 MySQL Router 或自研 proxy)中内置该校验逻辑,而不是依赖应用层判断。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

mysql

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

417

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

820

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

2392

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

816

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

709

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

374

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

2136

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

3932

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

647

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL vs MySQL
PostgreSQL vs MySQL

共1课时 | 169人学习

使用phpenv集成环境安装极致CMS
使用phpenv集成环境安装极致CMS

共2课时 | 274人学习