前言
之前文章介绍了 GTID 主从复制,实现了一主多从的 MySQL 架构,明天咱们来介绍一下主主复制的架构。
原理 :主主复制就是依据主从复制的原理,将两个主库设置互为主从即可。
变动 :在这两个主库的根底上,还能够搭建双主多从架构。
** 上面介绍在装置好 MySQL8 的 centos8 虚拟机上,实现 GTID 主主复制,以及双主多从复制的过程:
虚拟机列表:**
Master1: 192.168.25.149
一、Master1 配置
1.1 删除 auto.cnf,重启主动生成 server-uuid
rm -f /var/lib/mysql/auto.cnf
1.2 设置 server-id,关上 GTIT
vim /etc/my.cnf
1.3 重启 MySQL
systemctl restart mysqld.service
1.4 登录 mysql, 增加用于同步的数据库账号
mysql> create user 'kunlun'@'%' identified by '123456';
二、Master2 配置
2.1 删除 auto.cnf,重启主动生成 server-uuid
rm -f /var/lib/mysql/auto.cnf
2.2 设置 server-id,关上 GTID
vim /etc/my.cnf
2.3 重启 MySQL
systemctl restart mysqld.service
2.4 登录 mysql, 增加用于同步的数据库账号
mysql> create user 'kunlun'@'%' identified by '123456';
三、Master1 启动主从复制
3.1 登录 MySQL, 配置主从同步
mysql> change master to
3.2 启动从库服务
mysql> start slave;
3.3 查看状态
mysql> show slave status\G
四、Master2 启动主从复制
4.1 登录 MySQL, 配置主从同步
mysql> change master to
4.2 启动从库服务
mysql> start slave;
4.3 查看状态
mysql> show slave status\G
至此,互为主从复制的 GTID 主主复制曾经搭建胜利,上面再为两个 Master 各搭建一个从库。
五、Slave1 配置,并启动主从复制
5.1 删除 auto.cnf,重启主动生成 server-uuid
rm -f /var/lib/mysql/auto.cnf
5.2 设置 server-id
vim /etc/my.cnf
5.3 重启 MySQL
systemctl restart mysqld.service
5.4 登录 mysql, 配置主从同步
mysql> change master to
5.5 启动从库服务
mysql>start slave;
5.6 查看状态
mysql> show slave status\G
六、Slave2 配置,并启动主从复制
6.1 删除 auto.cnf,重启主动生成 server-uuid
rm -f /var/lib/mysql/auto.cnf
6.2 设置 server-id
vim /etc/my.cnf
6.3 重启 MySQL
systemctl restart mysqld.service
6.4 登录 mysql, 配置主从同步
mysql> change master to
6.5 启动从库服务
mysql>start slave;
6.6 查看状态
mysql> show slave status\G
至此,基于 GTID 的双主多从复制曾经搭建胜利
KunlunDB 我的项目已开源
【GitHub:】
https://github.com/zettadb
【Gitee:】
https://gitee.com/zettadb
END