mysql主主复制

主主复制:两个节点,都可以更新数据,并且互为主从
容易产生的问题:数据不一致;因此慎用
考虑要点:自动增长id
配置一个节点使用奇数id

auto_increment_offset=1   #开始点
auto_increment_increment=2 #增长幅度

另一个节点使用偶数id

auto_increment_offset=2
auto_increment_increment=2

主主复制的配置步骤:
(1) 各节点使用一个惟一server_id
(2) 都启动binary log和relay log
(3) 创建拥有复制权限的用户账号
(4) 定义自动增长id字段的数值范围各为奇偶
(5) 均把对方指定为主节点,并启动复制线程

准备两个虚拟机
10.0.0.204 master1
10.0.0.7 master2

在master1上配置my.cnf文件

vim /etc/my.cnf
[mysqld]
server-id=8
log-bin
auto_increment_offset=1         #开始点
auto_increment_increment=2      #增长幅度

重启
systemctl restart mariadb

进入mysql创建复制用户

show master logs; #查看二进制位置备用
grant replication slave on *.* to repluser@'10.0.0.%' identified by '000000';

在master2上操作
配置my.cnf

vim /etc/my.cnf
[mysqld]
server-id=7
log-bin
auto_increment_offset=2         #开始点
auto_increment_increment=2      #增长幅度

重启
systemctl restart mariadb

进入mysql

CHANGE MASTER TO #这是上面创建的用户 和master1二进制位置
  MASTER_HOST='10.0.0.18',
  MASTER_USER='test',
  MASTER_PASSWORD='000000',
  MASTER_PORT=3306,
  MASTER_LOG_FILE='mariadb-bin.000001',
  MASTER_LOG_POS=245;
  
  start slave;#启动
  show master logs #master2二进制位置 备用

进入master1 的mysql

CHANGE MASTER TO #这是上面创建的用户 和master1二进制位置
  MASTER_HOST='10.0.0.7',
  MASTER_USER='test',
  MASTER_PASSWORD='000000',
  MASTER_PORT=3306,
  MASTER_LOG_FILE='mariadb-bin.000001',
  MASTER_LOG_POS=245;
  
  start slave;#启动
  
  show slave status\G;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值