【51CTO独家特稿】如果单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和程序员多沟涌,多备份(备份我至少会做到本地和异地双备份),多测试,数据的事是最大的事,出不得半点差错,切记切记。
因本人自身能力有限,以上认识可能存在错误和疏漏,大家有什么想法和意见都可以通过我的博客与我交流,我会在第一时间更正此文章。

本文转自 抚琴煮酒 51CTO博客,原文链接:http://blog.51cto.com/yuhongchun/510652,如需转载请自行联系原作者

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

  1. mysql复制架构迁移到pxc_mysql复制(高可用架构方案的基础)

    mysql复制:把一个数据库实例上所有改变复制到另外一个数据库库服务器实例的过程 特点: 1.没有改变就无所谓复制 ;改变是复制的根本与数据源 2.所有的改变:是指可以复制全部改变,也可以复制部分改变 ...

  2. Heartbeat+DRBD+MySQL高可用架构方案与实施过程细节 【转】

    文章出处:Heartbeat+DRBD+MySQL高可用架构方案与实施过程细节 [转]             mysql数据库高可用高扩展性架构方案实施[原] Heartbeat+DRBD+MySQ ...

  3. 单表60亿记录等大数据场景的MySQL优化和运维之道 | 高可用架构

    015-08-09 杨尚刚 高可用架构 此文是根据杨尚刚在[QCON高可用架构群]中,针对MySQL在单表海量记录等场景下,业界广泛关注的MySQL问题的经验分享整理而成,转发请注明出处. 杨尚刚,美 ...

  4. MySQL 5.6通过Keepalived+互为主从实现高可用架构

    本文将介绍两台Mysql如何实现高可用架构.通常我们会配置主从同步,但这样若主的Mysql挂掉,还需要手动干预,例如把指向主库的IP地址修改为指向从库的IP,为了实现自动切换到从数据库,我们可以使用K ...

  5. mysql keepalived双主双活_mysql高可用架构方案之中的一个(keepalived+主主双活)

    Mysql双主双活+keepalived实现高可用 文件夹 1.前言... 4 2.方案... 4 2.1.环境及软件... 4 2.2.IP规划... 4 2.3.架构图... 4 3.安装设置MY ...

  6. Mysql学习总结(54)——MySQL 集群常用的几种高可用架构方案

    前言 高可用架构对于互联网服务基本是标配,无论是应用服务还是数据库服务都需要做到高可用.对于一个系统而言,可能包含很多模块,比如前端应用,缓存,数据库,搜索,消息队列等,每个模块都需要做到高可用,才能 ...

  7. mysql lvs 读写分离_mysql高可用架构方案之二(keepalived+lvs+读写分离+负载均衡)

    mysql主从复制与lvs+keepalived实现负载高可用 目录 1.前言    4 2.原理    4 2.1.概要介绍    4 2.2.工作原理    4 2.3.实际作用    4 3方案 ...

  8. lvs加MySQL读写分离_mysql高可用架构方案之二(keepalived+lvs+读写分离+负载均衡)

    mysql主从复制与lvs+keepalived实现负载高可用 文件夹 1.前言    4 2.原理    4 2.1.概要介绍    4 2.2.工作原理    4 2.3.实际作用    4 3方 ...

  9. Heartbeat+DRBD+MySQL高可用架构方案与实施过程细节

    https://blog.51cto.com/oldboy/1240412 转载于:https://blog.51cto.com/benchmarking/2103955

最新文章

  1. 传统多视图立体算法:PatchMatchStereo详解
  2. sklearn.preprocessing下的数据标准化(scale、MinMaxScaler)
  3. python有道翻译-Python版有道翻译
  4. 通过自定义配置实现插件式设计
  5. [推荐]VMware Workstation 6.5虚拟机(汉化补丁+注册机+原版安装文件)
  6. Quick BI电子表格: 新手亦可表格自由
  7. 黑马程序员—多线程,单线程
  8. java查询oracle数据库_Oracle数据库之java 从Oracle数据库到处数据到Elasticsearch全文检索库进行全文查询...
  9. 洛谷P3378 【模板】堆
  10. Red Giant Trapcode Suite 17 for Mac视频编辑粒子插件
  11. android字体单位sp,Android中的常用尺寸单位(dp、sp)快速入门教程
  12. Gephi从入门到精通
  13. 【CFD学习】网格无关性验证
  14. 原生 Ajax 请求
  15. 软件使用说明书编写格式规范
  16. 2018第四届美亚杯全国电子数据取证大赛团队赛wp
  17. FastDFS - 分布式文件存储系统
  18. bootstrap 表头组合
  19. css鼠标经过按钮变色6,像这种鼠标移过去会变色的按钮怎么做的
  20. 视觉打标软件 在线视觉打标系统 1.金橙子控制板卡 2.自主研发的定位系统

热门文章

  1. 爬虫的增量式抓取和数据更新
  2. Java 线程多线程编程3---线程同步之生产者与消费者问题
  3. 小学接触web的我是如何拿下蚂蚁实习 Offer的
  4. 本周ASP.NET英文技术文章推荐[10/21 – 10/27]
  5. 微服务实现事务一致性实例
  6. 基于间隔推送全量更新数据状态的设计方法
  7. 查找域内所有的Windows Server 2012 R2的服务器,并区分出哪些是物理机,那些是虚拟机...
  8. 代码的坏味道之一——译自《重构》
  9. LoadRunner Interview Questions
  10. [导入]C++程序随笔