MySQL数据库的优化(下)MySQL数据库的高可用架构方案

原创
数据库 MySQL 数据库运维
在上一篇MySQL数据库的优化中,我们跟随笔者学习了单机MySQL数据库的优化,今天我们继续跟随笔者学习MySQL优化的集群方案。

【51CTO独家特稿】在上一篇MySQL数据库的优化中,我们跟随笔者学习了单机MySQL数据库的优化,今天我们继续跟随笔者学习MySQL优化的集群方案。

MySQL高可用设计方案

如果单MySQL的优化始终还是顶不住压力时,这个时候我们就必须考虑MySQL的集群方案了,目前可行的方案有:

一、MySQL Cluster

优势:可用性非常高,性能非常好。每份数据至少可在不同主机存一份拷贝,且冗余数据拷贝实时同步。

但它的维护非常复杂,存在部分Bug,目前还不适合比较核心的线上系统,所以这个我不推荐。

二、DRBD磁盘网络镜像方案

优势:软件功能强大,数据可在底层快设备级别跨物理主机镜像,且可根据性能和可靠性要求配置不同级别的同步。IO操作保持顺序,可满足数据库对数据一致性的苛刻要求。

但非分布式文件系统环境无法支持镜像数据同时可见,性能和可靠性两者相互矛盾,无法适用于性能和可靠性要求都比较苛刻的环境,维护成本高于MySQL Replication。所以这个大家可根据实际环境来考虑是否部署。

三、MySQL Replication

在实际应用场景中,MySQL Replication是使用最为广泛的一种提高系统扩展性的设计手段。众多的MySQL使用者通过Replication功能提升系统的扩展性后,通过简单的增加价格低廉的硬件设备成倍 甚至成数量级地提高了原有系统的性能,是广大MySQL中低端使用者非常喜欢的功能之一,也是许多MySQL使用者选择MySQL最为重要的原因。

比较常规的MySQL Replication架构也有好几种,这里分别简单说明下

MySQL Replicatioin 方案一:常规复制架构--Master-slaves,是由一个Master复制到一个或多个Salve的架构模式,主要用于读压力大的应用数据库端廉价扩展解决方案,读写分离,Master主要负责写方面的压力。

MySQL Replicatioin 方案二:级联复制架构,即Master-Slaves-Slaves,这个也是为了防止Slaves的读压力过大,而配置一层二级 Slaves,很容易解决Master端因为附属slave太多而成为瓶劲的风险。

MySQL Replicatioin 方案三:Dual Master与级联复制结合架构,即Master-Master-Slaves,***的好处是既可以避免主Master的写操作受到Slave集群的复制带来的影响,而且保证了主Master的单点故障。

以上就是比较常见的MySQL replication架构方案,大家可根据自己公司的具体环境来设计 ,Mysql 负载均衡可考虑用LVS或Haproxy来做,高可用软件我推荐Heartbeat。

MySQL Replication的不足:如果Master主机硬件故障无法恢复,则可能造成部分未传送到slave端的数据丢失。所以大家应该根据自己目前的网络规划,选择自己合理的Mysql架构方案,跟自己的MySQL DBA和程序员多沟涌,多备份(备份我至少会做到本地和异地双备份),多测试,数据的事是***的事,出不得半点差错,切记切记。

因本人自身能力有限,以上认识可能存在错误和疏漏,大家有什么想法和意见都可以通过我的博客与我交流,我会在***时间更正此文章。

抚琴煮酒的技术型博客

http://hi.baidu.com/yuhongchun027

http://andrewyu.blog.51cto.com

参考文档 简朝阳 《MySQL性能调优与架构设计》电子工业出版社

【编辑推荐】

  1. MySQL数据库的优化(上)单机MySQL数据库的优化
  2. MySQL数据库分区管理 细节决定成败
  3. 从MySQL复制功能中得到一举三得实惠
  4. 降低锁竞争 减少MySQL用户等待时间
  5. 给数据减肥 让MySQL数据库跑的更快

 

责任编辑:艾婧 来源: 51CTO
相关推荐

2011-03-08 08:49:55

MySQL优化单机

2017-04-19 22:58:28

MySQL分布式数据

2010-05-21 14:01:23

MySQL数据库

2011-07-06 10:49:50

MySQL优化

2011-07-06 14:12:20

MySQLPercona

2017-11-06 11:10:11

数据库OracleMySQL

2017-03-15 15:14:03

MySQL数据库高可用性

2024-09-13 08:59:20

2011-03-03 17:56:52

MySQL数据库优化

2021-01-21 10:23:43

数据库架构技术

2013-01-04 10:00:12

MySQL数据库数据库查询优化

2024-03-27 12:14:56

数据库高可用GDS

2010-05-21 13:48:36

MySQL数据库

2010-06-02 13:58:30

MySQL数据库性能

2010-05-31 16:17:56

MySQL数据库性能

2010-06-10 10:15:50

MySQL数据库查询

2010-05-13 10:47:44

MySQL数据库查询

2018-08-24 13:58:13

数据库MySQL备份

2010-06-04 11:28:05

MySQL数据库

2015-05-04 14:17:16

数据库架构高可用
点赞
收藏

51CTO技术栈公众号