MySQL HA 方案 MMM、MHA、MGR、PXC 对比

时间:2020-11-30 15:24:02   收藏:0   阅读:7

MySQL高可用架构

MMM

(Multi Master Replication Manager)

 

技术图片

 

 

资源数量说明
主DB 2 用于主备模式的主主复制
从DB 0~N台 可以根据需要配置N台从服务器
IP地址 2n+1 N为MySQL服务器的数量
监控用户 1 用户监控数据库状态的MySQL用户(replication)
代理用户 1 用于MMM代理端改变read_only状态

故障转移步骤:

优点:

缺点:

适用场景:

MHA

(MySQL Master High Availability)

技术图片

 

 

需要资源:

资源数量说明
主DB 2 用于主备模式的主主复制
从DB 2~N台 可以根据需要配置N台从服务器
IP地址 n+2 N为MySQL服务器的数量
监控用户 1 用户监控数据库状态的MySQL用户(replication)
复制用户 1 用于配置MySQL复制的用户

MHA采用的是从slave中选出Master,故障转移:

优点:

缺点:

MGR

(MySQL Group Replication)

技术图片

 

 

支持多主模式,但官方推荐单主模式:

// 查看MGR的组员
select * from performance_schema.replication_group_members;
// 查看MGR的状态
select * from performance_schema.replication_group_member_stats;
// 查看MGR的一些变量
show variables like ‘group%‘;
// 查看服务器是否只读
show variables like ‘read_only%‘;

优点:

缺点:

适用的业务场景:

Percona的PXC

技术图片

 

 

Percona XtraDB Cluster是MySQL高可用性和可扩展性的解决方案, 的特性如下:

优点:

缺点:

 

 MMMMHAMGRPXC
优点   成熟稳定、对MySQL侵入小、 宕机后保证数据一致 原生高可用、数据一致性保证、支持多主 类似MGR
缺点 太旧,2010年后停止维护;仅支持基于binlog的同步 不支持;MySQL5.6以后的提供的多线程同步技术 没有读负载的功能 主从切换时,容易造成数据丢失 ;MMM监控服务存在单点故障,避免的监控服务单点,需要自行实现 选主方式过时、需要配合第三方脚本进行自动切换;管理节点单点;MySQL异步复制中的数据丢失,不能保证数据强一致性 管理不方便(需配合mysql-shell) 性能损耗大(降低为1/3)、 大事务会卡住整个集群、需要用第三方发行版MySQL

 


限制与不足

 


参考

https://juejin.cn/post/6844903812700831752

https://tech.meituan.com/2017/06/29/database-availability-architecture.html

https://cloud.tencent.com/developer/article/1054465

https://www.zhihu.com/question/53617036/answer/135776740

https://juejin.cn/post/6844903785848897543

https://www.talkwithtrend.com/Question/416891-2877659

https://my.oschina.net/Declan/blog/3114672

 

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!