一 场景需求

多源复制版本 5.7,目标主机5.6.21

4个DB机器的某些数据库需要数据汇总进行连表查询

二 进行搭建
  1 导出相应的目的库
     mysqldump -uuser -ppassword --master-data=2 --single-transaction --databases --add-drop-database dbname >dbname.sql
  2 将相应的目的库导入到多源复制机器上
     注意 5.6版本 需要先删除第一行,否则无法导入.
     mysql -uuser -ppassword < dbname.sql (并行导入,加快速度)
  3 设置相应的忽略库(非常重要)
     replicate-wild-ignore-table=test.%
     replicate-wild-ignore-table=mysql.%
     replicate-wild-ignore-table=dbname.%
  4 重启多源复制库
  5 过滤 postion和filename
     cat dbname.sql|grep CHANGE
  6 开启通道,进行change
    CHANGE MASTER TO MASTER_HOST='',MASTER_USER='', MASTER_PASSWORD='',MASTER_LOG_FILE='',MASTER_LOG_POS=FOR CHANNEL 'master-01';
    start slave for CHANNEL 'master-01'
    CHANGE MASTER TO MASTER_HOST='',MASTER_USER='', MASTER_PASSWORD='',MASTER_LOG_FILE='',MASTER_LOG_POS= FOR CHANNEL 'master-02';
    start slave for CHANNEL 'master-02'
 7 show slave status进行观察
 8 遇到过的问题
    场景1 架构场景 MHA 一主两从->多源复制
    问题描述 多源复制连接的是主,由于主挂掉导致,主从切换。多源复制出现问题
   解决方案 多源复制连接的主已挂掉,所以需要重新change

MHA切换失败的情况

1 由于新主肯定是重新生成binlog,定位新主的binlog
        2 分析新主binlog的具体sql语句,在多源DB上查找,然后确定at点,进行change

MHA切换成功的情况

1 参考 mysql级联复制转变为同级复制即可

场景2 由于pt校验主从数据一致性导致的多源DB出现错误
   问题描述 PT校验会在指定库进行创建表和相应的DML操作,多源DB忽略了test库,导致出错
   解决方案 跳过事件的方式不可行,因为很多,所以根据最近的备份进行恢复。
   总结 对于PT校验一定要注意到多源DB所忽略库的情况,不要指定忽略的库
9 关于 多源复制同步多个主 IO追不上的情况,暂时没有遇到(其实建议减少同步DB的数量,并且源主最好对于目标DB不要有太高的TPS

10 查看复制状态

show slave status for channel ''
这就是我对于多源复制的理解

mysql架构解读~mysql的多源复制的更多相关文章

  1. MySQL 5.7.9的多源复制

    什么是多源复制? 首先,我们需要清楚 multi-master 与multi-source 复制不是一样的. Multi-Master 复制通常是环形复制,你可以在任意主机上将数据复制给其他主机. M ...

  2. MySql(十六):MySql架构设计——MySQL Cluster

    前言: MySQL Cluster 是一个基于 NDB Cluster 存储引擎的完整的分布式数据库系统.不仅仅具有高可用性,而且可以自动切分数据,冗余数据等高级功能.和 Oracle Real Cl ...

  3. MySQL架构和MySQL索引

    1.  MySQL架构 1.1         逻辑架构图 1.1.1   Connection Pool: 连接池 * 管理缓冲用户连接,线程处理等需要缓存的需求. * 负责监听对 MySQL Se ...

  4. 《高性能Mysql》解读---Mysql的事务和多版本并发

    1.base:ACID属性,并发控制 2.MySql事务的隔离级别有哪些,含义是什么? 3.锁知多少,读锁,写锁,排他锁,共享锁,间隙锁,乐观锁,悲观锁. 4.Mysql的事务与锁有什么关联?MySq ...

  5. mysql 5.7多源复制(用于生产库多主库合并到一个查询从库)

    目前我们使用的是主从+分库分表的系统架构,主库有N个分库,从库为多个slave做负载均衡,所以数据库端的架构是下面这样的: 因为差不多有一年半没有专门搞技术为主了,顺带回顾下. 这就涉及到多个主库数据 ...

  6. MySQL多源复制(八)

    一.什么是多源复制 MySQL 5.7发布后,在复制方面有了很大的改进和提升.比如开始支持多源复制(multi-source)以及真正的支持多线程复制了.多源复制可以使用基于二进制日志的复制或者基于事 ...

  7. mysql5.7 安装和多源复制实践

    MySQL 5.7发布后,在复制方面有了很大的改进和提升.比如开始支持多源复制(multi-source)以及真正的支持多线程复制了.多源复制可以使用基于二进制日子的复制或者基于事务的复制.下面我们说 ...

  8. MySQL系列详解十:MySQL多源复制演示-技术流ken

    前言 多源复制即多主一从结构,多个主服务器端的数据都会同步到后端一个从服务器上面.至于为什么要做多源复制下面的总结很到位. 1.灾备作用:将各个库汇总在一起,就算是其他库都挂了(整个机房都无法连接了) ...

  9. MySQL 5.7的多源复制

    MySQL 5.7已经开始支持了多源复制,相信小伙们都很激动,MySQL 5.7之前只能实现一主一从.一主多从或者多主多从的复制,如果想实现多主一从的复制,只好使用MariaDB,但是MariaDB又 ...

随机推荐

  1. Git初次使用总结,安装到上传代码,多平台[码云|github]

    安装步骤 1.选择安装路径 2.选择创建图标,选择安装Git Bash和Git GUI 3.选择创建开始菜单 4.选择:use git and optional unix tools from the ...

  2. [转]GDB

    gdb调试coredump文件 gcc -g main.c //在目标文件加入源代码的信息 gdb a.out (gdb) start //开始调试 (gdb) n //一条一条执行 (gdb) st ...

  3. AI将带我们走向何方?

    AI即人工智能,对科幻着迷的博主对此认知颇深,打算从科幻电影入手,先讲下未来的AI将给人类带来哪些变化,哪些思考. 从最初的<星际航行>中的各种星球.地形等的介绍,到各个鉴于的探索,以及其 ...

  4. Leetcode 242.有效的字母异位词 By Python

    给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词. 示例 1: 输入: s = "anagram", t = "nagaram" ...

  5. Canvas与javaScript特效笔记

    第六章   Canvas与javaScript特效笔记 q  <canvas>标签的用途 HTML5 canvas 提供了通过 JavaScript 绘制图形的方法,此方法使用简单但功能强 ...

  6. Ubuntu中让归档管理器支持rar和7z格式

    由于版权等原因,Linux系统不能直接支持rar和7z,需要手动安装第三方工具. rar支持 sudo apt install unrar 7z支持 sudo apt install p7zip-fu ...

  7. 【codevs1004】四子连棋 状压bfs

    题目大意:给定一个大小为 4*4 的棋盘,分别有 7 个黑子.7 个白子和 2 个空位构成,求出至少需要移动多少步,才能使得四个相同的棋子共线. 题解:显然每一种棋盘的局面都是一个状态,因此需要采用状 ...

  8. 关于移动端及flex

    我们知道写pc页面的时候,ui设计图是多少px,我们写网页的时候,就会写多少px,这个其实就是由pc端屏幕的物理像素,和我们设计图的css逻辑像素决定的,由于屏幕的物理像素和css逻辑像素比,刚好是1 ...

  9. Linux下JDK+Eclipse安装

    Ubuntu版本14.04 JDK8_144 eclipse最新下载 注:原本安装JDK7配置好环境后报错,原来是最新eclipse的一个功能只有JDK8支持,若想使用JDK7需要注释某条代码 JDK ...

  10. Iptables防火墙规则使用

    iptables是组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它可以代替昂贵的商业防火墙解决方案,完成封包过滤.封包重定向和网络地址转换(NAT)等功能 ...