帮助文档
关键词列表
网站地图
网站首页
最新活动
轻量应用服务器
阿里云邮箱
等保测评
阿里云产品
企业上云最佳实践
技术帮助文档
关于我们
网站首页
>
关于我们
>
公司新闻
>
MySQL数据库高可用方案
MySQL数据库高可用方案
发布时间: 2020-08-05 14:37:43
文章作者: 网站编辑
阅读量: 276
MySQL数据库高可用方案
一.什么是高可用性:
高可用性=可靠性,它的本质就是通过技术和工具提高可靠性,尽可能长时间保持数据可用和系统运行,实现高可用性的原则,首先要消除单点故障,其次通过冗余机制实现快速恢复,还有就是实现容错。
二.我们在考虑数据库的高可用方案时,应该考虑几个方面:
1.若数据库发生了宕机或者意外中断等故障,能够尽快恢复数据库的可用性,尽可能的减少停机时间,保证业务不会因为数据库的中断而中断
2.用作备份,只读副本等功能的非主流节点的数据应该和主节点的数据实时或者始终保持一致
3.当业务发生数据库切换的时候,切换前后的数据库的内容应该保持一致,不会因为数据缺失或者数据不一致而影响业务
三.高可用方案:
1.主从复制
2.半同步复制
3.MHA+多节点集群
MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,该软件由两部分组成:MHA Manager(管理节点)和MHA Node(数据节点)。
MHA Manager: 可以单独部署在一台独立的机器上管理多个master-slave集群,也可以部署在一台slave节点上。
MHA Node: 行在每台MySQL服务器上。
MHA Manager会定时探测集群中的master节点,当master出现故障时,它可以自动将最新数据的slave提升为新的master,然后将所有其他的slave重新指向新的master。整个故障转移过程对应用程序完全透明。
MHA Node运行在每台MySQL服务器上,主要作用是切换时处理二进制日志,确保切换尽量少丢数据。
MHA也可以扩展到如下的多节点集群:
优点:
可以进行故障的自动检测和转移;
可扩展性较好,可以根据需要扩展MySQL的节点数量和结构;
MySQL发生不可用的概率相对更低
缺点:
逻辑较为复杂,发生故障后排查问题,定位问题更加困难;
数据一致性仍然靠原生半同步复制保证,仍然存在数据不一致的风险;
可能因为网络分区发生脑裂现象;
4.MGR
MySQL官方推荐的一款高可用集群方案MySQL Group Replication,基于Paxos协议的状态机复制,彻底解决了基于传统的异步复制和半同步复制中数据一致性问题无法保证的情况,也让MySQL数据库涉及的领域更广,打开互联网金融行业的大门。
MGR提供了高可用分布式MySQL数据库服务,它可以实现服务器自动故障转移,分布式容错能力,支持多主更新的架构,自动重配置()加入/移除节点,崩溃等),并且可以自动侦测和处理冲突。
MGR适用的场景包括:
(1)弹性复制:复制架构下,服务器的数量动态增加或缩减时,使影响降到最低。
(2)分片高可用:用户可以利用MGR实现单一分片的高可用,每个分片都具有一个复制组。
(3)主从复制的替代选择:可以使用单主模式避免发生冲突检测,以替代传统的主从复制。
下图为MGR的架构图:
下边分别介绍里边的内容:
MySQL Group Replication插件
该插件主要负责:
维护分布式执行内容
侦测和处理冲突
处理分布式集群的恢复(侦测成员的变化,在必要时作为贡献者提供数据,在必要时收集状态)
推送事务给其他组员
接受其他成员的事务并处理
决定事务最终的结果(提交/回滚)
5.zookeeper+proxy
Zookeeper使用分布式算法保证集群数据的一致性,使用zookeeper可以有效的保证proxy的高可用性,可以较好的避免网络分区现象的产生。
优点:
较好的保证了整个系统的高可用性,包括proxy、MySQL;
扩展性较好,可以扩展为大规模集群;
缺点:
数据一致性仍然依赖于原生的mysql半同步复制;
引入zk,整个系统的逻辑变得更加复杂;
上一篇:MySQL并不孤单的存在—硬件环境的限制与优化
下一篇:全球一流的云迁移战略如何开发
最热文章
钉钉蚂蚁分工报价:蚂蚁分工钉钉怎么收费
钉钉里面的任务管家多少钱
云服务器买断永久续费什么意思
手机连接腾讯云服务器远程桌面连接不上
阿里邮箱日历怎么看不到了呢?怎么回事?
钉钉退群怎么退不掉群
随机推荐
云计算是什么意思
什么是web服务器
什么平台能买云服务器
云防火墙怎样升级续费
虚拟主机如何正确选择
如何配置二级域名配置具体步骤
获取更多阿里云折扣优惠 立即咨询
活动推荐
DDoS高防(新BGP)
DDoS高防(国际)
内容推荐
更多
阿里云NAS高可用方案
腾讯云数据库MySQL高性能、高可用、高安全的云端数据库解决方案
阿里云MySQL主从切换:如何实现高可用性和数据同步
阿里云RDS数据库MySQL:高性能、高可用、高安全的云上数据库解决方案
阿里云数据库MySQL版:高性能、高可用、高安全的云数据库解决方案
关键词推荐
更多
阿里云合作伙伴
大带宽服务器
国内高防服务器
成都阿里云代理商
阿里云代理商优惠活动
阿里云邮箱
共享流量包价格
钉钉如何加入学校班级
轻量应用服务器和虚拟主机哪个好一点啊苹果12.1.2.2.1
阿里云cdn资源包和流量包
远程连接堡垒机怎么连接电脑主机上的网
阿里云企业邮箱如何注销账户和密码
钉钉群怎么查
如何用钉钉号加入班级群号码登录呢
阿里邮箱登录不了了怎么办呀苹果12手机
关系数据库有哪些操作方法和技巧呢
钉钉群聊怎么找不到了呢
阿里云企业免费邮箱是什么意思啊怎么用
为什么阿里邮箱无法回复邮件了呢怎么回事
access数据库的数据库类型为
联系客服免费领取更多阿里云产品新购、续费升级折扣,叠加官网活动折上折更优惠
立即领取