MySQL-Transefer(下称Transfer)是一个基于MySQL+patch后得到的主从同步工具。

其主要目的是为了解决原版本的主从同步里,从库是单线程apply主库的binlog,导致的延迟。

MySQL5.6以后的版本,从库即可多现在apply主库的binlog。

对于数据实时性要求不是特别严格的应用,只需要通过廉价的pc server 来扩展Slave

的数量,将读压力分散到多台Slave 的机器上面,即可通过分散单台数据库服务器的读压力来解决数据库端的读性能瓶颈,毕竟在大多数数据库应用系统中的读压力还是要比写压力大很多。这在很大程度上解决了目前很多中小型网站的数据库压力瓶颈问题,甚至有些大型网站也在使用类似方案解决数据库瓶颈。

搭建成一个Dual

Master 环境,并不是为了让两端都提供写的服务。在正常情况下,我们都只会将其中一端开启写服务,另外一端仅仅只是提供读服务,或者完全不提供任何服务,仅仅只是作为一个备用的机器存在。主要还是为了避免数据的冲突,防止造成数据的不一致性。因为即使在两边执行的修改有先后顺序,但由于Replication 是异步的实现机制,同样会导致即使晚做的修改也可能会被早做的修改所覆盖

通过Dual Master 复制架构,我们不仅能够避免因为正常的常规维护操作需要的停机所带来的重新搭建Replication 环境的操作,因为我们任何一端都记录了自己当前复制到对方的什么位置了,当系统起来之后,就会自动开始从之前的位置重新开始复制,而不需要人为去进行任何干预,大大节省了维护成本。

在MySQL Cluster 主配置文件(在管理节点上面,一般为config.ini)中,有一个非常重要的参数叫NoOfReplicas,这个参数

指定了每一份数据被冗余存储在不同节点上面的份数,该参数一般至少应该被设置成2

mysql cluster成本更低,oracle

rac更成熟,而且应用案例很多;

mysql cluster虽然设计很好,但是功能实现还不够完美,目前应用案例并不多,更多的案例是mysql replication

因为MySQL Cluster将数据分布到几个NDB节点之上,连接查询时,如果需要连接的表位于不同的NDB节点上,就需要将不同节点上的数据拿到本地再进行连接查询,这样对资源消耗比较大。(不过在MySQL Cluster7.3版本中,增加了适应性join查询,减小了以往join查询对资源的消耗)

Heartbeat是Linux-HA工程的一个组件。heartbeat最核心的包括两个部分:心跳监测和资源接管。在指定的时间内未收到对方发送的报文,那么就认为对方失效,这时需启动资源接管模块来接管运

行在对方主机上的资源或者服务。

比如用shell脚本监测到master的mysql不可用就将主上的heartbeat停掉,这样就会切换到backup中去

DRBD是通过网络来实现块设备的数据镜像同步的一款开源Cluster软件。

Lvs是一个虚拟的服务器集群系统,可以实现LINUX平台下的简单负载均衡。

keepalived是一个类似于layer3,

4 & 5交换机制的软件,主要用于 主机与备机

的故障转移。

高可用web架构: LVS+keepalived+nginx+apache+php+eaccelerator,也常与MySQL数据库一起使用

]

MMM即Master-Master Replication Manager for MySQL(mysql主主复制管理器)是一套灵活的脚本程序?用来对mysql replication进行监控和故障迁移?并能管理mysql Master-Master复制的配置 。附带的工具套件可以实现多个slaves的read负载均衡

HAProxy提供高可用性、负载均衡,比较适合负载特大的web站点。

mysql最新高可用_MySQL高可用方案介绍相关推荐

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

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

  2. mysql高可用_mysql高可用方案

    第一节:mysql 高可用方案 1.1 一主一从架构 mysql 配置为主从模式,从库是主库的 backup,同一时间设置其中一台为主服务器,提供读写,另一台服务器作为热备,不提供读写,通过复制与主服 ...

  3. mysql mha好吗_MySQL高可用方案MHA的一些总结和思考

    原标题:MySQL高可用方案MHA的一些总结和思考 MySQL高可用方案中MHA绝地是一个相当成熟的实现.对于数据的切换,其实MGR也能很好的完成,也就是说,数据层面的角色切换已经刻意很平滑的做好了, ...

  4. mysql 升级高可用_MySQL高可用方案升级规划

    这是学习笔记的第2035篇文章 这两天在梳理MySQL高可用方案的升级计划,发现要做的事情还真不少. 我们目前有新系统和老系统,老系统因为历史原因使用的是MySQL 5.5版本,新系统有了整体的规划, ...

  5. mysql三台高可用_Mysql高可用,实现方案

    https://www.cnblogs.com/nuanxin/p/5665840.html 对于一个系统而言,可能包含很多模块,比如前端应用,缓存,数据库,搜索,消息队列等,每个模块都需要做到高可用 ...

  6. mysql有没有实现高可用_MySQL高可用架构:mysql+keepalived实现

    系统环境及架构 #主机名 系统版本 mysql版本 ip地址 mysqlMaster centos7.4 mysql5.7 192.168.1.42 mysqlSlave centos7.4 mysq ...

  7. nginx实现mysql高可用_MySQL高可用

    3,nfs高可用,keepalive使用脚本(自己编写)vrrp_script {},通过脚本返回的状态(根据keepalive自定)判断drbd的主从,然后飘动vip,同时再触发脚本,切换drbd的 ...

  8. mysql 主备及时_MySQL高可用(二)主备延时如何解决?

    从上篇文章我们知道主备同步是依赖于 binlog,主库负责生产 binlog,备库负责消费 binlog,从而实现主备同步. 今天我们来学习一下主备同步里的一个重点的问题:主备延时. 主备延时,简单来 ...

  9. mysql集群搭建_mysql高可用集群搭建

    环境描述: Centos6.5 主库:149 从库:148 数据库版本:mariadb-10.0.33 第一步: 安装数据库: 这里我采用的是二进制安装: 创建用户: useradd -s /sbin ...

最新文章

  1. AI最佳论文都在这里了!(非常全,快领!)
  2. python get sheet_使用xlwt’get_sheet’方法访问工作表
  3. 固态器件理论(9)晶闸管
  4. Greedy Sequence(2019南京icpc网络预选赛)主席树求区间小于k的最大值
  5. windows mysql memcached_Memcached在Windows下的安装
  6. 【无删减】Python老司机收藏夹的17个国外免费学习网站
  7. Python实践:猜数字小程序Collatz序列
  8. NSS_08 extjs表单验证
  9. 江苏职称计算机考试错做题,江苏省职称计算机考试word注意点.doc
  10. 数据分析数据可视化(三)
  11. python(十一)接口开发、写日志、发邮件、python来发请求、手动添加环境变量...
  12. Python与Julia : parquet、feather格式比较
  13. [JAVA毕业设计]大数据在线考试系统在线阅卷系统及大数据统计分析源码获取和系统演示
  14. mtk刷机/启动流程学习笔记
  15. 蜂鸣器基本介绍及实现程序
  16. FastDFS原理及工作流程
  17. Python实现数据透视表
  18. 趣图:公司里来了一个程序员鼓励师
  19. GIS基本功 | 14 地图投影及其相关概念
  20. 计算机专业13,13级计算机专业的,信自院计算机专业方面的调剂可以问我

热门文章

  1. 宝塔 mysql 启动不了_宝塔面板MySQL无法启动(自动停止)!MySQL如何启动?
  2. 搭建高性能日志服务器,syslog日志服务器搭建
  3. android binder 要点记录
  4. 在word文档中如何自查错别字?
  5. jsPlumb.deleteEveryConnection is not a function jsPlumb清除画布 jsPlumb删除所有节点和所有连线
  6. 【前端优化 Vue项目优化】 如何避免浏览器卡顿,实现性能优化cdn?
  7. 2022-2028年全球及中国汽车油箱零件行业投资前景分析
  8. python编程入门到实践pdf,python编程入门课 视频
  9. 解决AndroidStudio虚拟机无法运行——AMD处理器
  10. 108-02-CSS