欢迎来到天天文库
浏览记录
ID:7900159
大小:30.42 KB
页数:4页
时间:2018-03-02
《常见的mysql解决方案》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、常见的MySQL解决方案 MySQL数据库作为最基础的数据存储服务之一,在整个系统中有着非常重要的地位,因此要求其具备高可用性是无可厚非的。下面是小编分享的,欢迎大家阅读! 【常见的MySQL解决方案】高性能性需要解决的主要有两个问题,即如何实现数据共享或同步数据,另一个是如何处理failover,数据共享一般的解决方案是通过SAN(StorageAreaNetwork)来实现,而数据同步可以通过rsync软件或DRBD技术来实现;failover的意思就是当服务器死机或出现错误时可以自动切换到其他
2、备用的服务器,不影响服务器上业务系统的运行。本文重点介绍一下目前比较成熟的Mysql高性能解决方案。 这是MySQL自身提供的一种高可用解决方案,数据同步方法采用的是MySQLreplication技术。MySQLreplication就是一个日志的复制过程,在复制过程中一个服务器充当主服务器,而一个或多个其他服务器充当从服务器,简单说就是从服务器到主服务器拉取二进制日志文件,然后再将日志文件解析成相应的SQL在从服务器上重新执行一遍主服务器的操作,通过这种方式保证数据的一致性。 MySQLrepl
3、ication技术仅仅提供了日志的同步执行功能,而从服务器只能提供读操作,并且当主服务器故障时,必须通过手动来处理failover,通常的做法是将一台从服务器更改为主服务器。这种解决方案在一定程度上实现了MySQL的高可用性,可以实现%的SLA。 为了达到更高的可用性,在实际的应用环境中,一般都是采用MySQLreplication技术配合高可用集群软件来实现自动failover,这种方式可以实现%的SLA。节会重点介绍通过KeepAlived结合MySQLreplication技术实现MySQL高可用
4、构架的解决方案。 MMM是Master-MasterReplicationManagerforMySQL的缩写,全称为MySQL主主复制管理器,它提供了MySQL主主复制配置的监控、故障转移和管理的一套可伸缩的脚本套件。在MMM高可用方案中,典型的应用是双主多从架构,通过MySQLreplication技术可以实现两个服务器互为主从,且在任何时候只有一个节点可以被写入,避免了多点写入的数据冲突。同时,当可写的主节点故障时,MMM套件可以立刻监控到,然后将服务自动切换到另一个主节点,继续提供服务,从而实现
5、MySQL的高可用。 MMM方案是目前比较成熟的MySQL高可用解决方案,可以实现%的SLA。节会重点介绍通过MMM实现MySQL高可用解决方案。 此方案是借助于第三方的软硬件实现的,在这个方案中,处理failover的方式是高可用集群软件Heartbeat,它监控和管理各个节点间连接的网络,并监控集群服务,当节点出现故障或者服务不可用时,自动在其他节点启动集群服务。 在数据共享方面,通过SAN(StorageAreaNetwork)存储来共享数据,在正常状态下,集群主节点将挂载存储进行数据读写
6、,而当集群发生故障时,Heartbeat会首先通过一个仲裁设备将主节点挂载的存储设备释放,然后在备用节点上挂载存储,接着启动服务,通过这种方式实现数据的共享和同步。这种数据共享方式实现简单,但是成本较高,并且存在脑裂的可能,需要根据实际应用环境来选择。这种方案可以实现%的SLA。 这种高可用解决方案也是借助于第三方的软硬件实现的,在处理failover的方式上依旧采用Heartbeat,不同的是,在数据共享方面,采用了基于块级别的数据同步软件DRBD来实现。 DRBD即DistributedRepl
7、icatedBlockDevice,是一个用软件实现的、无共享的、服务器之间镜像块设备内容的存储复制解决方案。和SAN网络不同,它并不共享存储,而是通过服务器之间的网络复制数据。这种方案实现起来稍微复杂,同时也存在脑裂的问题,可以实现%的SLA。 MySQLCluster由一组服务节点构成,每个服务节点上均运行着多种进程,包括MySQL服务器、NDBCluster的数据节点、管理服务器,以及(可能)专门的数据访问程序。此解决方案是MySQL官方主推的技术方案,功能强大,但是由于实现较为繁琐,配置麻烦,实
8、际的企业应用并不多。MySQLCluster的标准版和电信版可以达到%的SLA。
此文档下载收益归作者所有