本章你将彻底搞懂:几种主流 MySQL 高可用方案的原理、优缺点对比(MHA、MGR、Orchestrator、ProxySQL)。如何快速搭建 MHA 环境并测试故障切换。新增:Docker Compose 一键搭建 MHA 环境脚本、Orchestrator 的 HTTP API 调用示例、ProxySQL 读写分离 + 故障切换配置、实际生产中的选型决策树。
配套资源:MHA 一键部署脚本(基于 Docker)、Orchestrator 命令行操作示例、ProxySQL 配置文件、高可用方案对比表格。
真实踩坑:我曾用 MHA 做故障切换,但忘记配置 SSH 免密,导致切换时无法拉起新主库;还有一次 MGR 中一个节点网络闪断,导致整个集群阻塞(single-primary模式下不会,但multi-primary会有写冲突);更坑的是,切换后应用连接池未刷新,还在连旧主库,导致服务不可用 10 分钟。
8.1 一个主库宕机、切换失败的服务降级事故
2021 年,我所在的电商公司使用了 MHA(Master High Availability)管理 MySQL 主从。某天凌晨,主库硬件故障宕机。MHA 监控检测到主库不可用,自动发起故障切换——将最新数据的从库提升为主库。理论上这应该在 30 秒内完成。
但实际上,切换花了 5 分钟,并且切换后大量应用报错。排查发现:
- M
订阅专栏 解锁全文

2966

被折叠的 条评论
为什么被折叠?



