mysql架构类问题之MHA架构

大兔子大兔子 提交于 2019-11-26 11:04:52

MHA 架构

适用的主从复制架构

 主  / | \ 

从1 从2 从3

故障转移步骤

  • 选举具有最新更新的slave
  • 尝试从宕机的master保存二进制日志
  • 应用差异的中继日志到其他slave
  • 应用从master保存的二进制日志
  • 提升选举的slave为新的master
  • 配置其他slave向新的mater同步

架构需要的资源

资源 数量 说明
主DB 1 用于初始主从复制模式的master服务器
从DB 2-N 可以配置2台或多台从服务器
IP地址 n+2 N为MySQL服务器数量
监控用户 1 用于监控数据库状态的MySQL用户(all privileges)
复制用户 1 用于配置MySQL复制的MySQL用户(replication slave)

架构配置步骤

  • 配置一主多从复制的集群架构
  • 安装centos的YUM扩展包
  • 配置集群内各主机的SSH免认证
  • 在各节点安装mha_node
  • 在管理节点安装mha_manager
  • 配置并启动MHA管理进程

架构优点

  • 支持GTID的复制方式和基于日志点的复制方式
  • 可从多个slave中选举最适合的新master
  • 会尝试从旧master中尽可能多的保存未同步日志

架构缺点

  • 未必能获取到旧master未同步的日志(主备使用5.7以后的半同步复制)
  • 需要自行开发写VIP转移脚本
  • 只监控master而没有对slave实现高可用的办法

架构适用场景

  • 使用基于GTID的复制方式
  • 使用一主多从的复制架构
  • 希望更少数据丢失的场景

欢迎扫描下方二维码,持续关注:

互联网工程师(id:phpstcn),我们一起学习,一起进步

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!