构建高性能MYSQL集群系统总结

MYSQL高可用集群方案总结服务器

一,常见的高可用MYSQL解决方案
网络

    高可用解决方案:架构

    1,数据共享或同步数据,数据共享可经过SAN(Storage Area Network)来实现,数据同步可经过rsync软件或DRDB技术来实现ide

    2,处理failover,宕机迁移至备份服务器,不影响业务运行spa

    主从复制解决方案:日志

     MySQL自身的高可用解决方案,数据同步方法采用的是MYSQL replication技术,MYSQL replication技术是日志复制的过程,一主多从,从服务器拉取主服务器的二进制日志文件,而后再将日志文件解析成相应的SQL在从服务器上执行,来达到数据的一致性。orm

     注意:此处的从服务器只能提供读操做,而且当主服务器发生故障事,必须手动failover,将一台从服务器变成主服务器,实现90%的SLA(服务水平协定),通常在应用环境,MYSQL replication技术配合高可用的集群软件来实现自动的failover,达到95%的SLAhtm

     MMM高可用解决方案:进程

     MMM(Master-Master Replication Manager for MYSQL)MYSQL主从复制管理器,提供了MYSQL主主复制配置的监控,故障转移和管理的一套可伸缩的脚本套件。在MMM高可用解决方案中,典型的应用是双主多从架构,经过MYSQL replication技术实现两台服务器互为主从,且在任什么时候候只有一个节点能够写入,避免多点写入的数据冲突。同时,当可写的主节点故障时,MMM套件能够马上监控到,而后将服务自动切换到另外一个主节点,继续提供服务,来实现MYSQL高可用。这种方案是比较成熟的的MYSQL高可用解决方案,能够实现99%的SLA。get

     Heartbeat/SAN高可用解决方案:

     此解决方案是借助第三方软硬件实现的,这个方案处理failover的方式是高可用的集群软件Heartbeat,它监控和管理各个节点间的链接的网络,并监控集群服务,当节点出现故障或者服务不可用时,自动在其余节点启动集群服务。

     在数据共享方面,经过SAN存储在共享数据,在正常状态下,集群主节点将挂载存储进行读写,当集群发生故障时,Heartbeat会首先经过一个仲裁设备将主节点挂载的存储设备释放,而后在备用节点上挂载存储,启动服务。这种方式特色是成本高,存在脑裂的可能,可实现99.99%的SLA

     Heartbeat/DRDB高可用解决方案:

     这个也是借助第三方软件实现的,处理failover依旧采用Heartbeat,不一样的是,数据共享方面采用了基于块级别的数据同步软件DRDB(Distributed Replicated Block Device(DRBD)是一个用软件实现的、无共享的、服务器之间镜像块设备内容的存储复制解决方案)来实现。和SAN不一样的是,SAN是共享,DRDB是经过服务器之间的网络复制数据。特色:复杂,存在脑裂问题,可实现99.9的SLA

     MYSQL Cluster高可用解决方案:

MYSQL Cluster由一组服务节点构成,每一个服务节点上均运行着多种进程,包括MYSQL服务器、NDB Cluster的数据节点、管理服务器,以及专门的数据回访程序,特色,功能强大,配置繁琐,可达到99.999%的SLA

相关文章
相关标签/搜索