码迷,mamicode.com
首页 > 数据库 > 详细

Mariadb或者Msql实现级联复制架构方案

时间:2020-09-17 12:04:45      阅读:33      评论:0      收藏:0      [点我收藏+]

标签:mic   schema   date   添加   flush   查看   log-bin   级别   create   

三台Centos8主机实现级别复制 10.0.0.8:Master 10.0.0.18:Slave1 10.0.0.28:Slave2

全部安装Mariadb:yum -y install mariadb-server

在Master实现
[root@master ~]# vim /etc/my.cnf.d/mariadb-server.cnf
##[mysqld]中 添加
server-id=1
log-bin

[root@master ~]# systemctl start mariadb
[root@master ~]# mysql
MariaDB [(none)]> show master logs;
+--------------------+-----------+
| Log_name | File_size |
+--------------------+-----------+
| mariadb-bin.000001 | 28198 |
| mariadb-bin.000002 | 344 |
+--------------------+-----------+
2 rows in set (0.000 sec)

MariaDB [(none)]> grant replication slave on*.* to repluser@‘10.0.0.%‘ identified by ‘tianze‘;
Query OK, 0 rows affected (0.000 sec)

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.000 sec)

[root@master ~]# mysqldump -A -F --single-transaction --master-data=1 > /data/all_`date +%F`.sql

[root@master ~]# scp /data/all_2020-09-03.sql 10.0.0.18:/data
[root@master ~]# scp /data/all_2020-09-03.sql 10.0.0.28:/data

在中间级联Slave1实现
[root@slave1 ~]# vim /etc/my.cnf.d/mariadb-server.cnf
##[mysqld]中 添加
server-id=2
log-bin
read-only
log_slave_updates ##级联复制中间节点的必选项

[root@slave1 ~]# systemctl start mariadb

##还原数据库
[root@slave1 ~]# vim /data/all_2020-09-03.sql
CHANGE MASTER TO MASTER_HOST=‘10.0.0.8‘,MASTER_USER=‘repluser‘,MASTER_PASSWORD=‘tianze‘,MASTER_PORT=3306,MASTER_LOG_FILE=‘mariadb-bin.000003‘, MASTER_LOG_POS=389;
[root@slave1 ~]# mysql
MariaDB [(none)]> set sql_log_bin=0;
Query OK, 0 rows affected (0.000 sec)
MariaDB [mysql]> source /data/all_2020-09-03.sql
MariaDB [mysql]> show master logs; ## 记录二进制日志给第三个节点同步使用
+--------------------+-----------+
| Log_name | File_size |
+--------------------+-----------+
| mariadb-bin.000001 | 28198 |
| mariadb-bin.000002 | 663 |
+--------------------+-----------+
2 rows in set (0.000 sec)


MariaDB [mysql]> set sql_log_bin=1; ##恢复开启二进制日志
MariaDB [mysql]> start slave; ##开启同步
MariaDB [mysql]> show slave status\G ##查看同步状态

在第三个节点配置
[root@slave2 ~]# vim /etc/my.cnf.d/mariadb-server.cnf
##[mysqld]中 添加
server-id=3
read-only

[root@slave2 ~]# systemctl start mariadb.service
[root@slave2 ~]# vim /data/all_2020-09-03.sql

CHANGE MASTER TO MASTER_HOST=‘10.0.0.18‘,MASTER_USER=‘repluser‘,MASTER_PASSWORD=‘tianze‘,MASTER_PORT=3306,MASTER_LOG_FILE=‘mariadb-bin.000002‘, MASTER_LOG_POS=663;


[root@slave2 ~]# mysql
MariaDB [(none)]> source /data/all_2020-09-03.sql
MariaDB [mysql]> start slave; ##开启同步
MariaDB [mysql]> show slave status\G ##查看同步状态


##测试同步 在第一个master创建数据库
MariaDB [(none)]> create database test;
Query OK, 1 row affected (0.000 sec)

在第三个节点查看数据库,发现已经同步,配置完成
MariaDB [mysql]> show databases;
+--------------------+
| Database |
+--------------------+
| test |
| information_schema |
| mysql |
| performance_schema |

 

 

Mariadb或者Msql实现级联复制架构方案

标签:mic   schema   date   添加   flush   查看   log-bin   级别   create   

原文地址:https://www.cnblogs.com/tz66/p/13606617.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!