文章目录
- 前言
- 一、M-M 介绍:
- 二、M-M 搭建:
- 1.Master1:
- 1.1 my.cnf 参数配置:
- 1.2 创建主从同步用户:
- 1.3 开启复制:
- 2.Master2:
- 2.1 my.cnf 参数配置:
- 2.2 创建主从同步用户:
- 2.3 开启复制:
- 三、总结
前言
本文在Mysql(M-S) 主从同步模型基础之上,增加主节点,扩展模型为M-M,两个设备互为主库和从库,当写入数据时,互相进行备份。这样一来,对任何一台数据的更改,都会同步到另一台设备上。
一、M-M 介绍:
M 为主节点,两个主节点的数据,可以相互进行同步;
二、M-M 搭建:
1.Master1:
1.1 my.cnf 参数配置:
log-bin=master-log1
server-id=111
binlog-do-db=rep
binlog-do-db=user
binlog-ignore-db=mysql
binlog-ignore-db=test
binlog-format=row
default_authentication_plugin=mysql_native_password
配置完成记得重启 mysql 服务
1.2 创建主从同步用户:
-- 创建master1_rep用户,密码是123456,可以被连接的ip 段是192.168.75
CREATE USER 'master1_rep'@'192.168.75.%' IDENTIFIED BY '123456';
-- 对创建的用户赋予复制权限
GRANT REPLICATION SLAVE ON *.* TO 'master1_rep'@'192.168.75.%';
1.3 开启复制:
- 在master2 中查看binlog 的信息:
需要先执行Master2 中 2.1 my.cnf 参数配置 和 2.2 创建主从同步用户
show master STATUS
- 修改binlog 的同步位置:
change master to master_host='192.168.75.129',master_user='master2_rep',master_password='123456', master_port=3706,
master_log_file='master-log2.000001', master_log_pos=688;
- 开启主从同步
start slave;
- 查看主从同步:
show slave STATUS
2.Master2:
2.1 my.cnf 参数配置:
log-bin=master-log2
server-id=222
binlog-do-db=rep
binlog-do-db=user
binlog-ignore-db=mysql
binlog-ignore-db=test
binlog-format=row
default_authentication_plugin=mysql_native_password
配置完成记得重启 mysql 服务
2.2 创建主从同步用户:
-- 创建master2_rep用户,密码是123456,可以被连接的ip 段是192.168.75
CREATE USER 'master2_rep'@'192.168.75.%' IDENTIFIED BY '123456';
-- 对创建的用户赋予复制权限
GRANT REPLICATION SLAVE ON *.* TO 'master2_rep'@'192.168.75.%';
2.3 开启复制:
- 在master1 中查看binlog 的信息:
show master STATUS
- 修改binlog 的同步位置:
change master to master_host='192.168.75.128',master_user='master1_rep',master_password='123456', master_port=3706,
master_log_file='master-log1.000001', master_log_pos=688;
- 开启主从同步
start slave;
- 查看主从同步:
show slave STATUS
三、总结
本文通过2个mysql 节点,搭建了M-M 同步模型,在两个Master 节点修改的数据 ,都会被相互同步。