Mysql之多源复制
在复制时,可以有多个Master。这些Master不进行冲突检查拓扑到Slave。在使用多源复制时对Slave的表存储格式是有要求的,必须要基于table存储而非文件存储【require table based repositories,not file based repositories】。所以可以在Slave启动时设置或设置在配置文件中:
1.修改:
master_info_repository='TABLE';
relay_log_info_repository='TABLE';
默认是基于File的。
2.配置:
【基于GTID】确保每个Master开启GTID,使用CHANGE MASTER TO 为每一个挂载到Slave上的Master上指定Channel。
如:
CHANGE MASTER TO MASTER_HOST='master1', MASTER_USER='rpl', MASTER_PORT=3451, MASTER_PASSWORD='',MASTER_AUTO_POSITION = 1 FOR CHANNEL 'master-1';
【基于BinLog】
CHANGE MASTER TO MASTER_HOST='master1', MASTER_USER='rpl', MASTER_PORT=3451, MASTER_PASSWORD='' \
MASTER_LOG_FILE='master1-bin.000006', MASTER_LOG_POS=628 FOR CHANNEL 'master-1';【需确定MASTER_LOG_FILE 和MASTER_LOG_POS】
3.启动Slave:
使用 start slave thread_types启动复制。可以在Slave上启动多个Channel,也可以启动一个指定的Channel。
start slave [thread_types];
start slave [thread_types] for CHANNEL channel;
4.关闭Slave:
stop slave [thread_types]; 终止当前的所有Channels。
stop slave [thread_types] for CHANNEL channel;
Note:thread_types是为Slave线程指定一个Name。
5.重置Multi-Source Replication slaves:
reset slave [for CHANNEL channel];可针对所有的也可重置指定的channel.
reset slave会清除BinLog中的位置,意味着有一个clean start:清除Master.info,relay-log并开启一个新的relay log.[在执行前先stop]
6 监控:
a.查看指定在channel上的状态,如 show slave status for CHANNEL chnanel_name.默认查看所有。
b.使用performance schema中的表监控channels.与Replication相关的表有如下这些:

b-1 监控Channel的连接状态:select * from replication_connection_status;
Mysql之多源复制的更多相关文章
- mysql架构解读~mysql的多源复制
一 场景需求 多源复制版本 5.7,目标主机5.6.21 4个DB机器的某些数据库需要数据汇总进行连表查询 二 进行搭建 1 导出相应的目的库 mysqldump -uuser -ppass ...
- MySQL 5.7--多源复制(非GTID模式)
==================================================== 在MYSQL5.7版本中引入多源复制,一个从库允许复制多个主库的数据,每个主库被配置为一个单独 ...
- mysql数据库多源复制方案
概述 由于目前生产环境的mysql数据库分布在两台服务器,若从单一主从来看,配置很简单,但是需要将两台服务器的数据库同步到一台从库上面,需要进行更多配置和注意事项.多源复制有两种方案,Binlog+P ...
- mysql5.7 安装和多源复制实践
MySQL 5.7发布后,在复制方面有了很大的改进和提升.比如开始支持多源复制(multi-source)以及真正的支持多线程复制了.多源复制可以使用基于二进制日子的复制或者基于事务的复制.下面我们说 ...
- MySQL 5.7.9多源复制报错修复
版本:5.7.9 用5.7.9的版本搭建MySQL多源复制测试环境 开发说复制出现问题,上去看了一下: mysql> show slave status\G******************* ...
- MySQL 5.7.9的多源复制
什么是多源复制? 首先,我们需要清楚 multi-master 与multi-source 复制不是一样的. Multi-Master 复制通常是环形复制,你可以在任意主机上将数据复制给其他主机. M ...
- mysql 5.7 多源复制 原创
一从两主:多源复制 每台mysql 服务器都需要加my.cnf要加两个参数才可以在GTID多源复制 master-info-repository=TABLE relay-log-info-reposi ...
- MySQL系列详解十:MySQL多源复制演示-技术流ken
前言 多源复制即多主一从结构,多个主服务器端的数据都会同步到后端一个从服务器上面.至于为什么要做多源复制下面的总结很到位. 1.灾备作用:将各个库汇总在一起,就算是其他库都挂了(整个机房都无法连接了) ...
- MySQL 5.7的多源复制
MySQL 5.7已经开始支持了多源复制,相信小伙们都很激动,MySQL 5.7之前只能实现一主一从.一主多从或者多主多从的复制,如果想实现多主一从的复制,只好使用MariaDB,但是MariaDB又 ...
随机推荐
- Maven编译项目报错:某些类找不到符号
遇到Maven在编译项目源码时候出现找不到符号错误,主要归结为以下几个问题: 1. 可能项目编码格式不统一. 2. 可能项目编码使用的JDK版本不统一. 项目可能是当前项目也可能是继承的父项目,还 ...
- 几个简单实用的css效果
1.要使按钮具有3D效果,只要将它的左上部分边框设置为浅色,右下部分边框设置为深色即可. eg:#button { background: #888; border: 2px solid; borde ...
- java项目导入IntelliJ IDEA
(0)之所以有第0步,是因为第一次倒入失败,所以从删除上次倒入的数据开始- 开始删除数据. 启动Intelli J,点击右键删除上次的导入的项目 把配置拷贝到.m2文件夹下,并且删除上次下载的一些依赖 ...
- C++ 复制构造函数
C++类的设计中,如果某些函数没有显式定义,C++会自动生成,复制构造函数便是其中之一,其他的还有默认构造函数.赋值操作符.默认析构函数.地址操作符.一个类的复制构造函数的原型一般为: Class_n ...
- [BZOJ1662][POJ3252]Round Numbers
[POJ3252]Round Numbers 试题描述 The cows, as you know, have no fingers or thumbs and thus are unable to ...
- native2ascii.exe
native2ascii.exe 是 Java 的一个文件转码工具,是将特殊各异的内容 转为 用指定的编码标准文体形式统一的表现出来,它通常位于 JDK_home\bin 目录下,安装好 Java S ...
- respberry pi3 上手随记
入门篇: raspberry 官网: https://www.raspberrypi.org/ 各个系统镜像下载地址: https://www.raspberrypi.org/downloads/ 树 ...
- JavaScript之函数
控制语句(switch) switch(name){ case '1': age = 123; break; case '2': age = 456; break; case '3': age = 7 ...
- Google java style
这里主要是记录关于java style的笔记. 1,Google的. 博客链接(中文):http://www.cnblogs.com/lanxuezaipiao/p/3534447.html. 官方链 ...
- PowerDesigner V16.5 安装文件
之前在网上找个假的,只能看,不能创建自己的DB; 或者 不能破解的,比较伤脑筋. 偶在这里提供一个 可长期使用的版本. PowerDesigner165_破解文件.rar 链接:http://p ...