6.mysql学习笔记:myql的复制拓扑

原创 2015年11月22日 22:33:59

myql的复制拓扑

可以在任意的主库(master)和备库(slave)中建立复制,只有一个限制:一个备库(slave)只能有一个主库(master)

一般来讲我们在设计mysql复制拓扑的时候应该符合以下几个准则

1.一个mysql备库只能有一个主库;
2.每个备库必须要有一个唯一的服务器id;
3.一个主库可以有多个备库;
4.如果打开了log_slave_updates选项,一个备库可以把其主库上的数据变化传播到其他备库。


一主库多备库

顾名思义,也就是多个slave去复制一个主库,这种结构各个备库之间没有交互(各个slave的id必须不同),在有少量写操作大量读操作的情况下,这种配置非常有用。可以把读操作分摊到不同的备库中。

拓扑结构如下图所示:

这里写图片描述

用途如下:

1.为不同的角色使用不同的备库;
2.把一台备库当做待用的主库,除了复制没有其他数据传输;
3.将一台备库放到远程数据中心用作容灾;
4.延迟一个或多个备库,以备灾难恢复;
5.使用其中一个备库作为培训开发或者测试使用。


主动-主动模式下的主-主复制

主-主复制包含两个服务器,每个都作为对方的主库和备库。

如下图所示:

这里写图片描述

这种情况下如果两个服务器都对一个字段进行更新,容易导致数据的不同步。


主动-被动模式下的主-主复制

这个是构建容错性和高可用性系统的强大方式,主要区别在于其中的一台服务器是只读的被动服务器。如图所示:

这里写图片描述

这样可以使得反复切换主动和被动服务器非常方便,因为服务器的配置是对称的。

设置主动-被动的主-主拓扑结构在某种意义上类似于创建一个热备份,但是可以使用和这个热备份来提高性能,例如用它来执行读操作、热备份、“离线”维护。


拥有备库的主-主结构

此时我们为每个主库增加一个备库,这样就可以避免单点故障,增加了冗余。同时为了分摊压力可以把查询分配到备库上。

如下图所示:
这里写图片描述


主库、分发主库及备库

当备库的数量足够多时,会对主库造成很大的负载,比如每个备库都会在主库上开启一个线程执行binlog dump操作,并且它们不会共享binlog dump的资源。

因此,如果需要多个备库,一个较好的方法是从主库中移除负载,使用分发主库。分发主库其实也是一个备库,他的目的是提取和提供主库的二进制日志文件。把原本主库所需承担的压力分担给分发主库。

拓扑如下图所示:
这里写图片描述


版权声明:本文为博主原创文章,未经博主允许不得转载。

MySQL复制常用拓扑结构详解

复制的体系结构有以下一些基本原则: (1)    每个slave只能有一个master; (2)    每个slave只能有一个唯一的服务器ID; (3)    每个master可以有很多slave;...
  • liqfyiyi
  • liqfyiyi
  • 2016年03月25日 11:45
  • 986

AD 实战之八:复制拓扑

本文出自 “岳雷的微软网络课堂” 博客,请务必保留此出处http://yuelei.blog.51cto.com/202879/126641   在前面的博文中我们在域中部署了额外域控制器,而且我...
  • flyoxs
  • flyoxs
  • 2010年10月27日 14:08
  • 1289

复制拓扑

10.4 复制拓扑 可以在任意个主库和备库之间建立复制,只有一个限制,每一个备库只能有一个主库。 有很多负载的拓扑结构,但即使是最简单的也可能会非常灵活。一种拓扑可以有多重用途。 1....
  • zhaoyangjian724
  • zhaoyangjian724
  • 2015年07月02日 14:47
  • 247

Ubuntu系统学习笔记-6.Mysql远程连接

之前的笔记里写通过phpmyadmin来实现对mysql的管理,但是如果要远程连接怎么办,这里使用了Navicat,发现填写Ubuntu主机ip和设置对应的数据库端口号(默认3306)后,不能正常连接...
  • u010303610
  • u010303610
  • 2016年12月09日 09:30
  • 108

Sqlserver2005 peer-to-peer事务复制(对等拓扑复制)的Bug及其配置简述

Sqlserver2005 peer-to-peer事务复制(对等拓扑复制)的Bug及其配置简述Sqlserver2009-08-01 17:32:22阅读55评论0  字号:大中小 订阅主要就是几点...
  • zhongqi
  • zhongqi
  • 2011年03月09日 22:40
  • 698

6.mysql

1. 单表的curd操作?对一张表中的数据进行增删改查操作 C:create 创建 U:update 修改 R:read 读|检索 查询 D:delete 删除 2. 常见的数据库 软件...
  • qq_35638837
  • qq_35638837
  • 2017年08月08日 10:30
  • 92

myql linux 安装步骤

1、到mysql官网下载mysql编译好的二进制安装包,在下载页面Select Platform:选项选择linux-generic,然后把页面拉到底部,64位系统下载Linux - Generic ...
  • loadhai
  • loadhai
  • 2016年07月31日 13:47
  • 501

Active Directory的复制拓扑

当在域中部署了额外域控制器,而且我们已经知道每个域控制器都有一个内容相同的Active Directory数据库,那么额外域控制器在进行Active Directory复制时所使用复制拓扑是怎么进行的...
  • wangxiaofei2006
  • wangxiaofei2006
  • 2009年10月22日 16:10
  • 577

ArcGIS10.1新建拓扑问题 执行(CopyFeature)失败

ArcGIS10.1新建拓扑问题 执行(CopyFeature)失败ArcGIS10.1新建拓扑问题 执行(CopyFeature)失败ArcGIS10.1新建拓扑问题 执行(CopyFeature)...
  • gis0911178
  • gis0911178
  • 2016年09月29日 14:06
  • 1355

排除AD站点内部的复制故障

复制故障的常见症状表明存在站点内部复制故障的常见症状包括: •用户和计算机没有收到已更新的策略。•没有将正确的 SYSVOL 共享内容复制到所有域控制器 (DC)。注意:FRS 故障也可能导致出现此症...
  • sergey
  • sergey
  • 2005年11月16日 16:22
  • 7291
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:6.mysql学习笔记:myql的复制拓扑
举报原因:
原因补充:

(最多只允许输入30个字)