mysql双主日志_MySQL双主双从配置开启二进制日志

MySQL双主双从配置开启二进制日志

一主多从,可以缓解读的压力,但是一旦主宕机了,就不能写了;所以我们可以采用双主双从架构

双主双重架构规划:

aeae69228277901f3b162b4c5327a269.png

主master 3307 ---> 从slave 3309

主master 3308 ---> 从slave 3310

3307 3308 互为主从

2个写节点,每个写节点下又是2个读节点;

MySQL双主双从配置开启二进制日志

1、配置每一台MySQL服务器的配置文件my.cnf

3307

3308

3309

3310

2、与一主多从一样,所有主服务器配置文件加上binlog配置

3307

3308

3309

3310

log-bin=mysql-bin

server-id=实例的端口(server-id要唯一)

3、第一台主服务器3307的my.cnf文件增加如下配置:(Master 3307)

auto_increment_increment=2

auto_increment_offset=1

log-slave-updates

sync_binlog=1

wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

4、第二台主服务器3308的my.cnf文件增加如下配置:(Master 3308)

auto_increment_increment=2

auto_increment_offset=2

log-slave-updates

sync_binlog=1

wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

配置项说明

auto_increment_increment,控制主键自增的自增步长,用于防止Master与Master之间复制出现重复自增字段值,通常auto_increment_increment=n,有多少台主服务器,n 就设置为多少;

auto_increment_offset=1设置自增起始值,这里设置为1,这样Master的auto_increment字段产生的数值是:1, 3, 5, 7, …等奇数ID

注意auto_increment_offset的设置,不同的master设置不应该一样,否则就容易引起主键冲突,比如master1的offset=1,则master2的offset=2,master3的offset=3

在双主模式中,log-slave-updates 配置项一定要配置,否则在master1(3307)上进行了更新数据,在master2(3308)和slave1(3309)上会更新,但是在slave2(3310)上不会更新

sync_binlog表示每几次事务提交,MySQL把binlog缓存刷进日志文件中,默认是0,最安全的是设置为1;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值