热衷于分享各种干货知识,大家有想看或者想学的可以评论区留言,秉承着“开源知识来源于互联网,回归于互联网”的理念,分享一些日常工作中能用到或者比较重要的内容,希望大家能够喜欢,不足之处请大家多提宝贵地意见,我们一起提升,守住自己的饭碗。
关注公众号,技术道路不迷路


一、引言:MySQL高可用参考架构的定位与目标
1. IT的核心价值:IT是企业获取竞争优势、降低成本、强化客户关系的关键,不间断可用性成为核心需求。 2. 架构定位:MySQL高可用(HA)参考架构提供HA与灾难恢复(DR)最佳实践框架,支持本地、云、混合部署场景,确保数据库与应用在计划内(维护)和非计划内(故障)事件中的可用性。 3. 架构层级设计:提供4个标准参考架构(Bronze、Silver、Gold、Platinum),每个层级通过“最优技术组合”实现目标服务级别,平衡成本与复杂度。
二、停机的影响与成本:凸显高可用必要性
停机具有普遍性与高成本特性,具体数据如下表所示:
| $350K | |
| 87小时 | |
| $10M | |
| 91% |
官方强调:企业需通过robust IT基础设施、主动监控、有效DR计划缓解停机风险。
三、混沌工程:验证系统韧性的关键实践
1. 定义:通过主动“破坏”系统(模拟故障场景),验证系统抵御生产环境动荡事件的韧性,核心是“打破以换取安心”。 2. 核心测试场景: • 基础设施故障:网络、服务器、存储故障,电源/站点故障(如飓风) • 人为与数据问题:人为错误、数据损坏 • 软件与配置变更:应用/数据库/服务器软件更新、数据重组、应用优化 3. 战略价值:对需保障“持续运行”的企业,投入混沌工程是战略必需,可最小化不可预见事件的影响。
四、MySQL高可用核心框架:适用场景与运维支持
1. 适用场景: • 优化现有MySQL部署 • 设计新系统(预判故障与维护需求) • 指导应用开发者:设计“容错应用”,利用Application Continuity透明处理故障 2. 监控、运维与自动化: • 核心HA技术:依托MySQL原生技术简化部署,包括: • InnoDB Cluster:支持Active/Active、自动集群成员管理、自动故障转移 • InnoDB ReplicaSet:单区域内的主从服务器架构 • InnoDB ClusterSet:跨多区域的主从集群架构 • 关键工具集:提供配置、监控、运维工具,具体如下表:
五、四大参考架构:层级差异与核心特性
1. Bronze架构:基础级HA(Dev/Test/非关键Prod)
• 定位:适用于“简单重启/备份恢复即可满足HA需求”的场景(如测试、开发、非关键生产库),以最低成本提供基础数据库服务。 • 服务级别(RTO/RPO):
• 备份策略:支持4种备份方式,平衡备份时长、存储与恢复效率:
• 核心技术:单实例数据库、MySQL Enterprise Backup、Binlog(PITR)、本地+远程备份存储。
2. Silver架构:部门级HA(Prod/部门关键库)
• 定位:适用于“无法接受冷重启/备份恢复”的生产库(如部门级关键应用),在Bronze基础上新增InnoDB ReplicaSet,减少本地故障与计划维护停机。 • 服务级别(RTO/RPO):
• 备份策略:继承Bronze所有备份方式,新增**“备份卸载至副本”** 特性——将备份负载从主库转移至副本,释放主库资源;恢复时优先故障转移至副本,备份仅作为“最后手段”。 • 核心技术:InnoDB ReplicaSet(主从架构)、热备(Hot Standby)、手动故障转移、本地+远程备份。
3. Gold架构:核心业务级HA(零/近零数据丢失)
• 定位:适用于“无法容忍长时间停机与数据丢失”的核心业务(如 mission-critical 生产应用),在Silver基础上提供3种架构模式,覆盖本地与跨区域DR。 • 服务级别(RTO/RPO):
• 核心模式(3种): 1. Pattern 1 - 远程备用:通过InnoDB ClusterSet实现“生产库+远程同步备用库”,消除单点故障,灾难时RTO/RPO低。 2. Pattern 2 - 多备用数据库:本地备用库(同区域不同故障域)+ 远程备用库,本地故障时“零数据丢失+秒级停机”,区域灾难时可故障转移至远程。 3. Pattern 3 - 远程备用读集群:继承Pattern 2优势,新增“多备用库支持只读操作”,实现本地与跨区域读扩展。 • 核心技术:InnoDB ClusterSet、自动故障转移、同步HA(低延迟)、MySQL Router(透明故障转移)。
4. Platinum架构:极端关键业务级HA(零停机)
• 定位:适用于“需零停机”的极端关键业务,在Gold基础上新增双向异步复制,支持迁移、升级零停机。 • 服务级别(RTO/RPO):
• 核心优势: • 支持单向/双向复制,可在任意副本读写(需应用适配多主避免冲突); • 副本支持不同平台/版本/配置,实现“在线迁移与升级”; • 应用可零停机切换至副本(需自定义服务管理)。 • 核心技术:双向异步复制、多主多区域架构、InnoDB ClusterSet、自定义应用故障转移。
六、结论:高可用的基础保障与工具支持
1. 基础要求:所有数据库需运行在可靠系统平台上,且需通过监控“主动检测、预防、恢复”问题(避免影响可用性)。 2. 核心监控工具:Oracle Enterprise Manager、OCI Observability and Management(MySQL战略监控平台)。 3. 整合支持:OCI HeatWave持续整合所有MySQL参考架构、配置最佳实践与生命周期操作,简化高可用部署。
七、附录:关键术语与技术补充
核心术语:
• RTO(Recovery Time Objective):故障后恢复时间; • RPO(Recovery Point Objective):故障后可接受的数据丢失量; • SLA(Service Level Agreement):服务级别协议(RTO/RPO直接影响SLA)。 • 关键技术: • MySQL Group Replication:基于Paxos算法,支持单主/多主模式,自动成员管理与故障检测; • Hot Backup:MySQL Enterprise Backup提供的“热备”,备份时InnoDB读写不中断,支持PITR; • 快速重启:InnoDB通过保存缓冲池页面,减少重启后预热时间。
问题1:企业在选择MySQL高可用架构(Bronze/Silver/Gold/Platinum)时,应优先考虑哪些核心因素?
答案:需优先考虑3个核心因素,确保架构与业务需求匹配:
1. 业务关键性:非关键场景(Dev/Test/低优先级Prod)选Bronze;部门级关键场景选Silver;核心业务(零/近零数据丢失需求)选Gold;极端关键(零停机需求)选Platinum。 2. 可接受的RTO/RPO:若可接受“小时-天级RTO”(如测试库),Bronze足够;若需“分钟级RTO”(部门Prod)选Silver;若需“秒级RTO”(核心业务)选Gold;若需“零RTO/RPO”(极端关键业务)选Platinum。 3. 成本与复杂度平衡:Bronze成本最低、复杂度最低(单实例+基础备份);Platinum成本最高、复杂度最高(双向复制+多主多区域),需根据预算与运维能力选择。
问题2:在非计划内节点/实例故障场景下,MySQL四个高可用架构的RTO(恢复时间目标)有何核心差异?造成差异的关键技术是什么?
答案:各架构RTO差异及关键技术如下表所示,核心差异源于“故障转移机制”与“架构冗余度”:
问题3:Gold架构的三种模式(Remote Standby、Multiple Stand-by Databases、Remote Standby Reader Farm)在设计目标与适用场景上有何本质区别?
答案:三种模式的设计目标与适用场景存在明确差异,核心区别在于“冗余范围”与“功能扩展”:
1. Remote Standby(远程备用): • 设计目标:通过“生产库+远程同步备用库”消除单点故障,保障跨区域DR; • 适用场景:核心业务需“跨区域灾难恢复”,但对本地读扩展无需求(如单一区域生产,需异地备份)。 2. Multiple Stand-by Databases(多备用数据库): • 设计目标:本地备用库(同区域故障域隔离)保障“本地零数据丢失+秒级停机”,远程备用库保障跨区域DR; • 适用场景:核心业务需“本地高可用+跨区域DR”,且对本地故障恢复速度要求极高(如OLTP应用,需低延迟)。 3. Remote Standby Reader Farm(远程备用读集群): • 设计目标:继承Multiple Stand-by Databases的HA/DR能力,新增“多备用库支持只读操作”,实现读扩展; • 适用场景:核心业务需“本地HA+跨区域DR+读负载分担”(如读密集型应用,需通过多副本分散读压力)。
官方链接:https://www.mysql.com/why-mysql/white-papers/mysql-reference-architectures-for-high-availability/
文中的概念来源于互联网,如有侵权,请联系我删除。
欢迎关注公众号:小周的数据库进阶之路,一起交流AI、数据库、中间件和云计算等技术。如果觉得读完本文有收获,可以转发给其他朋友,大家一起学习进步!感兴趣的朋友可以加我微信,拉您进群与业界的大佬们一起交流学习。
文章转载自小周的数据库进阶之路,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




