温馨提示×

centos上mysql如何做容灾

小樊
42
2025-12-27 03:58:27
栏目: 云计算

在 CentOS 上构建 MySQL 容灾的可落地方案


一、方案选型与适用场景

方案 架构要点 容灾能力 一致性 复杂度 典型场景
主从复制 + Keepalived VIP 一主一从/一主多从,应用通过 VIP 访问主库 主机宕机可切换至从库,读扩展 异步为主,可上半同步 低-中 读多写少、成本敏感
双主复制 + Keepalived VIP 两节点互为主从,各自写入,通过 VIP 对外 单节点宕机可切换,写能力保留 需防自增冲突,建议配合GTID 需要基本双活与自动漂移
MySQL InnoDB Cluster(MGR) 官方多主/单主集群,基于 Group Replication 自动选主、自动恢复 强一致(多数派) 中-高 新项目、对一致性与自动化要求高
MHA + 主从 管理节点监控主库,故障自动提升从库 秒级切换(依赖复制延迟) 异步/半同步,可能丢少量数据 传统架构过渡、兼容性好
Galera Cluster 多主同步复制(wsrep) 多节点高可用 同步一致 中-高 需要多主写与强一致

以上方案在业界广泛使用,均可在 CentOS 7/8 上落地;选择时优先考虑一致性、切换自动化程度与团队运维能力。


二、快速落地两套常用架构

  • 方案A 主从复制 + Keepalived VIP(入门首选)

    1. 基础复制配置
      • 主库 my.cnf:启用 server-id=1log-bin,创建复制账号并授权;记录 File/Position
      • 从库 my.cnf:启用 server-id=2relay-log,执行 CHANGE MASTER TO …,启动复制并检查 Slave_IO_Running/Slave_SQL_Running=Yes
    2. 高可用接入
      • 两台数据库节点部署 Keepalived,配置同一 VIP;通过脚本检测 mysqld 存活,异常时停止 Keepalived 触发 VIP 漂移
      • 应用连接 VIP,实现故障自动切换与读扩展(从库可承担读流量)。
  • 方案B 双主复制 + Keepalived VIP(基本双活)

    1. 双向复制
      • 两节点互为主从,均开启 log-bin 与复制账号;建议启用 GTID 简化切换与恢复。
      • 为规避自增主键冲突,配置 auto_increment_increment=2auto_increment_offset=1/2(两台不同)。
    2. 故障切换
      • 通过 Keepalived VIP 对外提供统一入口;健康检查脚本判断本机 MySQL 状态,异常时让出 VIP。
      • 注意避免双主同时写入同一行/同一自增键导致冲突,业务侧可做分库分表或键空间规划。

三、关键配置与切换要点

  • 复制必备参数
    • 建议启用 GTID(gtid_mode=ON、enforce_gtid_consistency=ON),便于故障切换与一致性校验。
    • 性能与安全:sync_binlog=1binlog_format=ROW,必要时开启 SSL/TLS 加密复制链路。
  • 一致性策略
    • 主从/双主以异步为主,关键业务建议上 半同步复制 降低数据丢失风险。
    • 双主务必配置 auto_increment_offset/increment 或使用业务唯一键策略,避免主键冲突。
  • 切换与演练
    • 定期演练主从/双主切换与恢复流程,验证 复制延迟、数据一致性、VIP 漂移 是否符合 RTO/RPO 目标。
    • 切换后优先保障数据不丢与顺序一致性,再恢复写入与读流量。

四、备份恢复与监控告警

  • 备份策略
    • 逻辑备份:mysqldump/mysqlpump 做全量/增量导出,便于迁移与快速恢复。
    • 物理备份:Percona XtraBackup 支持在线热备与时间点恢复(PITR),适合大库与严格 RPO 场景。
  • 监控与告警
    • 持续监控 复制延迟、复制错误、连接数、慢查询、磁盘/IO 等关键指标;结合 Prometheus/GrafanaZabbix 设置阈值告警。
    • 建议对 VIP 漂移、主从角色变化、备份成功率 建立事件告警与值班响应机制。

五、如何选择与落地顺序

  • 若追求自动化与强一致,优先选 InnoDB Cluster(MGR);若强调兼容与成本,先上 主从 + Keepalived VIP;需要基本双活可用 双主 + Keepalived VIP
  • 落地顺序建议:容量与一致性评估 → 方案与切换流程设计 → 预演与压测 → 监控告警与备份策略上线 → 灰度切换与复盘优化。

0