环境:

192.168.1.248 HE1 主库

192.168.1.249 HE2 主库

192.168.1.250 HE3 从库

主库授权备份账户

mysql>  grant SELECT,RELOAD,SHOW DATABASES,SUPER,LOCK TABLES,REPLICATION CLIENT,SHOW VIEW,EVENT,FILE on *.* to backup@'localhost' identified by 'MANAGER';
mysql> flush privileges;

建立主从复制的用户名和密码,指定哪个IP地址用户使用这个用户可以访问主库

mysql>  grant replication client,replication slave on *.* to 'mysync'@'192.168.1.%' identified by 'MANAGER';
mysql> flush privileges;

主库全库备份

[root@HE1 ~]# mysqldump -ubackup -p  --single-transaction --databases 248db --master-data=2 >248.sql

[root@HE2 ~]# mysqldump -ubackup -p  --single-transaction --databases 249db --master-data=2 >249.sql

拷贝主库备份文件到从库

[root@HE1 ~]# scp -rp 248.sql root@192.168.1.250:/root

[root@HE2 ~]# scp -rp 249.sql root@192.168.1.250:/root

从库还原

[root@HE3 ~]# mysql -uroot -p <248.sql

Enter password:

[root@HE3 ~]# mysql -uroot -p <249.sql

Enter password:

查看主库备份集中的binlog和position偏移量

[root@HE3 ~]# cat 248.sql |grep "CHANGE MASTER TO MASTER_LOG_FILE='"

-- CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000017', MASTER_LOG_POS=581;

[root@HE3 ~]# cat 249.sql |grep "CHANGE MASTER TO MASTER_LOG_FILE='"

-- CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000004', MASTER_LOG_POS=581;

从库:

在从库配置读取主库的IP地址,复制的用户名和密码,从主库哪个BINLOG文件开始读取,偏移量是多少

MariaDB [(none)]>CHANGE MASTER  'Master248' TO MASTER_HOST='192.168.1.248',MASTER_USER='mysync',MASTER_PASSWORD='MANAGER',MASTER_PORT=3306,MASTER_LOG_FILE='mysql-bin.000017',MASTER_LOG_POS=581;
MariaDB [(none)]>CHANGE MASTER  'Master249' TO MASTER_HOST='192.168.1.249',MASTER_USER='mysync',MASTER_PASSWORD='MANAGER',MASTER_PORT=3306,MASTER_LOG_FILE='mysql-bin.000004',MASTER_LOG_POS=581;

开启从库复制开关

MariaDB [(none)]> start slave 'Master248';
 
MariaDB [(none)]> show slave 'Master248' status\G
 
MariaDB [(none)]> start slave 'Master249';
 
MariaDB [(none)]> show slave 'Master249' status\G

验证从库状态是否正常主要看下面这两个状态是否为yes

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| 248db              |
| 249db              |
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
6 rows in set (0.00 sec)

在248主机上创建表并插入数据

mysql> use 248db;
Database changed
mysql> create table aixuan1(
    -> id int(10) unsigned NOT NULL AUTO_INCREMENT,
    -> text varchar(20) NOT NULL DEFAULT '',
    -> PRIMARY KEY(id))
    -> ENGINE=innodb AUTO_INCREMENT=1
    -> DEFAULT CHARSET=utf8;
Query OK, 0 rows affected (0.15 sec)
 
mysql>
mysql> insert into aixuan1(text) values('aa'),('bb'),('cc'),('dd'),('ee'),('ff');
Query OK, 6 rows affected (0.02 sec)
Records: 6  Duplicates: 0  Warnings: 0

从库验证

MariaDB [(none)]> use 248db;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
 
Database changed
MariaDB [248db]> show tables;
+-----------------+
| Tables_in_248db |
+-----------------+
| aixuan1         |
+-----------------+
1 row in set (0.00 sec)

在249主机上创建表并插入数据

mysql> use 249db;
Database changed
mysql> create table helei1(
    -> id int(10) unsigned NOT NULL AUTO_INCREMENT,
    -> text varchar(20) NOT NULL DEFAULT '',
    -> PRIMARY KEY(id))
    -> ENGINE=innodb AUTO_INCREMENT=1
    -> DEFAULT CHARSET=utf8;
Query OK, 0 rows affected (0.15 sec)
 
mysql>
mysql> insert into helei1(text) values('aaa'),('bbb'),('ccc'),('ddd'),('eee'),('fff');
Query OK, 6 rows affected (0.02 sec)
Records: 6  Duplicates: 0  Warnings: 0

从库验证

MariaDB [248db]> use 249db;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
 
Database changed
MariaDB [249db]> show tables;
+-----------------+
| Tables_in_249db |
+-----------------+
| helei1          |
+-----------------+
1 row in set (0.00 sec)
 
MariaDB [249db]> select * from helei1;
+----+------+
| id | text |
+----+------+
|  1 | aaa  |
|  2 | bbb  |
|  3 | ccc  |
|  4 | ddd  |
|  5 | eee  |
|  6 | fff  |
+----+------+
6 rows in set (0.00 sec)

至此,MariaDB多源复制搭建成功。

本文出自 “岁伏” 博客,请务必保留此出处http://suifu.blog.51cto.com/9167728/1830682

MariaDB多源复制环境搭建(多主一丛)的更多相关文章

  1. mysql搭建多主一从源复制环境

    问题描述:搭建过一主多从的环境,由于数据库数据一致性要求高,有些情景会搭建一主多从的架构,搭建多主一从的模式,相对来说适合数据整合,将多个业务的库整合到一起,方便做查询,也可以当做一个监控其他主库数据 ...

  2. 基于Docker搭建MySQL多源复制环境

    MySQL5.7在主从复制上面相对之前版本多了一些新特性,包括多源复制.基于组提交的并行复制.在线修改Replication Filter.GTID增强.半同步复制增强等. 多源复制:多源复制加入了一 ...

  3. 1-web应用之LAMP源码环境搭建

    目录 一.LAMP环境的介绍     1.LAMP环境的重要性     2.LAMP组件介绍 二.Apache源码安装     1.下载Apache以及相关依赖包     2.安装Apache以及相关 ...

  4. mariadb多源复制 muiltil source replication

    环境:centos-6.5      Mariadb:10.1.13-MariaDB 多源复制:企业数据库中写的需求较大,以至于I/O负载比较大,那么就必须把写的操作分摊到多台主服务器上进行,然后在将 ...

  5. 【ZooKeeper系列】3.ZooKeeper源码环境搭建

    前文阅读: [ZooKeeper系列]1.ZooKeeper单机版.伪集群和集群环境搭建 [ZooKeeper系列]2.用Java实现ZooKeeper API的调用 在系列的前两篇文章中,介绍了Zo ...

  6. 【一步一步】Spring 源码环境搭建

    平时项目中基本上都会用到spring,但是源码还没有深入的了解过.趁这段时间稍微空闲点,开始研究下spring 源码.下面是spring 源码的环境搭建. 主要分为如下步骤: ①安装jdk,gradl ...

  7. Linux Kafka源码环境搭建

    本文主要讲述的是如何搭建Kafka的源码环境,主要针对的Linux操作系统下IntelliJ IDEA编译器,其余操作系统或者IDE可以类推. 1.安装和配置JDK确认JDK版本至少为1.7,最好是1 ...

  8. MyBatis源码环境搭建

    之前研究mybatis都是参考前面学习的人的一些经验,并没有自己搭建源码环境进行.现在以mybatis3.4.6版本搭建,搭建过程中各种failed,下面大致记录环境搭建过程. 1.mybatis3. ...

  9. Spring源码阅读 源码环境搭建(一)

    ring 源码阅读的搭建(一) 一 下载spring源码 进入官方网页:https://spring.io/projects/spring-framework 进入相关的github位置,下载zip包 ...

随机推荐

  1. 创建控制器的3种方式、深入了解view的创建和加载顺序

    转载自:http://blog.csdn.net/weisubao/article/details/41012243 (1)创建控制器的3种方式 - (BOOL)application:(UIAppl ...

  2. Block 朴实理解

    转载自:http://www.cnblogs.com/lzz900201/archive/2013/04/17/3025340.html block是个什么玩意儿 Block是Apple Inc.为C ...

  3. USACO Section 1.3 Prime Cryptarithm 解题报告

    题目 题目描述 牛式的定义,我们首先需要看下面这个算式结构: * * * x * * ------- * * * <-- partial product 1 * * * <-- parti ...

  4. Linq to SQL 简单的增删改操作

    Linq to SQL 简单的增删改操作. 新建数据库表tbGuestBook.结构如下: 新建web项目,完成相应的dbml文件.留言页面布局如下 <body> <form id= ...

  5. 触发器(基本的SR触发器、同步触发器、D触发器)

    一.能够存储1位二值信号的基本单元电路统称为触发器(Filp-Flop) 触发器是构成时序逻辑电路的基本逻辑部件.它有两个稳定状态:“0”和“1”.在不同的输入情况下,它可以被置0状态或1状态,当输入 ...

  6. Sublime Text 3 搭建 Golang 开发环境

    安装Golang go语言主页: https://golang.org/ go语言安装下载: https://golang.org/dl 环境变量设置: GOROOT: GOROOT变量设置go安装的 ...

  7. 关于配置Tomcat的URIEncoding

    遇到的问题: 程序需要发送http GET请求到服务器,请求的参数中包含了中文字符.程序中参数为UTF-8格式,且经过了UTF-8 URL编码再发送.使用的tomcat服务器,但服务器端后台程序中取到 ...

  8. php解决微信开发中用户昵称中的特殊字符与emoji表情写入mysql错误的问题

    解决办法:将3个字节的特殊字符与emoji表情替换掉即可. $nickname = preg_replace('/xE0[x80-x9F][x80-xBF]'.'|xED[xA0-xBF][x80-x ...

  9. Cocos2dx 学习笔记整理----在项目中使用图片(一)

    cocos2dx有多种使用图片的方法,先来个最简单的:用CCSprite直接使用图片. 首先,进入到之前建立的项目,把你将要使用的图片放入到目录下的Resources文件夹里面.项目中以相对路径使用资 ...

  10. PHPCMS v9 实现首页,列表页,内容页调用点击量方法

    大家好,今天有点闲,看很多朋友经常问PHPCMS v9 首页,列表页,内容页调用点击怎么弄,打算抽时间把代码全部归纳出来,以便大家日后使用,如下: 1,首页调用点击量 {pc:content acti ...