如果单MySQL的优化始终还是顶不住压力时,这个时候我们就必须考虑MySQL的高可用架构(很多同学也爱说成是MySQL集群)了,目前可行的方案
有: 一、MySQL Cluster 优势:可用性非常高,性能非常好。每份数据至少可在不同主机存一份拷贝,且冗余数据拷贝实时同步
如果单MySQL的优化始终还是顶不住压力时,这个时候我们就必须考虑MySQL的高可用架构(很多同学也爱说成是MySQL集群)了,目前可行的方案有:
一、MySQL Cluster
优势:可用性非常高,性能非常好。每份数据至少可在不同主机存一份拷贝,且冗余数据拷贝实时同步。但它的维护非常复杂,存在部分Bug,目前还不适合比较核心的线上系统,所以这个我不推荐。
二、DRBD磁盘网络镜像方案
优势:软件功能强大,数据可在底层快设备级别跨物理主机镜像,且可根据性能和可靠性要求配置不同级别的同步。IO操作保持顺序,可满足数据库对数据一致性
的苛刻要求。但非分布式文件系统环境无法支持镜像数据同时可见,性能和可靠性两者相互矛盾,无法适用于性能和可靠性要求都比较苛刻的环境,维护成本高于
MySQL Replication。另外,DRBD也是官方推荐的可用于MySQL高可用方案之一,所以这个大家可根据实际环境来考虑是否部署。
三、MySQL Replication
在实际应用场景中,MySQL
Replication是使用最为广泛的一种提高系统扩展性的设计手段。众多的MySQL使用者通过Replication功能提升系统的扩展性后,通过
简单的增加价格低廉的硬件设备成倍
甚至成数量级地提高了原有系统的性能,是广大MySQL中低端使用者非常喜欢的功能之一,也是许多MySQL使用者选择MySQL最为重要的原因。
比较常规的MySQL Replication架构也有好几种,这里分别简单说明下
MySQL Replication架构一:常规复制架构--Master-slaves,是由一个Master复制到一个或多个Salve的架构模式,主要用于读压力大的应用数据库端廉价扩展解决方案,读写分离,Master主要负责写方面的压力。
MySQL Replication架构二:级联复制架构,即Master-Slaves-Slaves,这个也是为了防止Slaves的读压力过大,而配置一层二级 Slaves,很容易解决Master端因为附属slave太多而成为瓶劲的风险。
MySQL Replication架构三:Dual Master与级联复制结合架构,即Master-Master-Slaves,最大的好处是既可以避免主Master的写操作受到Slave集群的复制带来的影响,而且保证了主Master的单点故障。
以上就是比较常见的MySQL replication架构方案,大家可根据自己公司的具体环境来设计 ,Mysql 负载均衡可考虑用LVS或Haproxy来做,高可用HA软件我推荐Heartbeat。
MySQL
Replication的不足:如果Master主机硬件故障无法恢复,则可能造成部分未传送到slave端的数据丢失。所以大家应该根据自己目前的网络
规划,选择自己合理的Mysql架构方案,跟自己的MySQL
DBA和程序员多沟涌,多备份(备份我至少会做到本地和异地双备份),多测试,数据的事是最大的事,出不得半点差错,切记切记。
分享到:
相关推荐
本文档讲述了MySql集群搭建方案,比较详细的。特分享下载。
mysql集群对比,8中方案对比,附原理图
高可用性、负载均衡的mysql集群解决方案
MySQL-集群最佳解决方案 MySQL-集群解决方案
mysql集群的一种方案
mysql集群部署和LVS负载均衡实现方法: 假设现在有4台服务器(mysql官方推荐的最小配置) 将4台服务器安装CentOS 5.2,实现LVS负载均衡
centos7搭建mysql集群,包含整个搭建步骤,部分错误解决方案
Spring + Ibatis 与mysql集群集成
MySQL_Cluster集群配置方案MySQL_Cluster集群配置方案MySQL_Cluster集群配置方案
galera cluster for mysql集群部署方案,MySQL的多活多中心实现,同步效率很好。
Windows环境下MySQL集群的搭建,使用了三个节点,第一个节点作为管理节点,第二个节点作为数据节点A和SQL节点A,第三个节点作为数据节点B和SQL节点B。 此外,还演示了如何使用图形化客户端管理MySQL集群,新建数据库...
mysql+heartbeat+共享存储实施方案(mysql高可用集群)
使用Docker建立Mysql集群使用Docker建立Mysql集群使用Docker建立Mysql集群使用Docker建立Mysql集群
linux 下mysql集群安装配置 Centos
MySQL集群解决方案(主从复制、PXC集群、MyCat、HAProxy)
高可用性、负载均衡的mysql集群解决方案
Centos7_1611_64bit安装mysql集群方案:1+2+2(3台服务器)环境清理及准备(在各节点服务器上都要执行)清除MySQL旧版本,首先使用如下
此文档中包括mysql集群安装手册的详细步骤和mysql集群安装中可能会遇到的问题解决方法
linux服务器做mysql数据库集群,很好不错的文档、很实用。
实现mysql服务的高可用和高性能。应用层访问mysql服务的时候能够读写分离,并排除读和写服务器的单点故障