MHA的优点是成熟稳定,可以自动进行故障检测和转移;扩展性也好,可以根据需要扩展MySQL的节点数量和结构;节约成本、易安装,不改变现有部署,无服务器性能下降;适配各类存储引擎。

至于缺点,主要是VIP的配置麻烦,需要编写脚本或使用第三方工具来实现;需要基于SSH免认证配置,系统存在一定的安全隐患;只监控主服务器是否可用,不能监控从服务器。英方高可用VIP配置简单,一键式设置,无需SSH免认证配置,全图形化界面操作方式,不改变现有部署,简单易用。

MGR是mysql官方推出的一种较新的高可用方案,优点是数据一致性强;支持多节点写入,具备高容错性;节点新增和移除都是自动的。扩展性高;支持单主模式和多主模式;插件式安装,部署简单。

其缺点是仅支持innodb引擎表,且每张表必须要有主键;必须开启GTID和binlog,且设置binlog为row格式;DDL语句不支持原子性,不能检测冲突,执行后需自行校验是否一致;不支持对表进行锁操作 ;多主模式不支持外键;一个MGR集群最多支持9个节点;

英方软件提供物理层的数据保护方式,且不需要开启GTID和binlog,上层监控生产主机系统、网络、应用三个层次的保护,当其中任何一个层面发生故障,均可以自动或手动直接启动备端接管生产。

此外,英方软件也提供逻辑级的解决方案,只需要开启binlog即可,自带一致性校验工具,可实时,定时,周期性进行数据一致性校验,支持一对一,一对多,多对多,级联方式部署,且没有数量限制

MYSQL高可用架构中,目前较为成熟和常见的是MHA,MGR推出的时间较晚,仍在不断完善中,很少用于生产环境中。收起