MySQL在Linux上的高可用实现
一、常见架构与适用场景
二、两种落地方案示例
方案一 双主互备 + Keepalived(轻量、快速对外)
方案二 Group Replication(MGR,强一致、自动化)
三、关键设计与运维要点
四、方案选型建议
| 方案 | 一致性 | 写入并发 | 自动故障转移 | 复杂度 | 典型场景 |
|---|---|---|---|---|---|
| 主从复制 + VIP/Keepalived | 中(依赖复制与半同步) | 低–中 | 是(需脚本/工具) | 低–中 | 读多写少、快速切换 |
| 双主互备 + VIP/Keepalived | 中(需避免双写) | 中 | 是 | 中 | 写可用性优先 |
| Group Replication(MGR) | 高 | 中–高(单主更稳) | 是 | 中–高 | 强一致、自动化 |
| Percona XtraDB Cluster(PXC) | 高 | 高 | 是 | 中–高 | 多写、强一致 |
| 共享存储/DRBD + 心跳 | 高 | 中 | 是 | 高 | 传统高可用、块级一致 |