mysql设置主从数据库的同步

使用一台slave作为中继,分担Master的压力,slave中继需要开启bin-log,并配置log-slave-updates

在这里插入图片描述

Slave中继可使用Black-hole存储引擎,不会把数据存储到磁盘,只记录二进制日志。

M-M 双主互备(互为主从)

每个服务器需要做同样的同步更新,破坏了事物的隔离性和数据的一致性。

在这里插入图片描述

M-M-M

监控三台机器互相作对方的master

在这里插入图片描述

天生的缺陷:复制延迟,slave上同步要慢于master,如果大并发的情况那延迟更严重。

mysql在5.6已经自身可以实现fail over故障切换

One slave Muti master 一从对多主

好处:节省成本,将多个master数据自动化整合

缺陷:对库和表数据的修改较多

5.实现

=================================================================

5.1 环境准备


本地安装两个mysql,或者使用虚拟机,或者使用docker安装,需要准备两个mysql,本文使用docker安装

在docker中先创建两个mysql服务器

主服务器:3308

从服务器:3309

在这里插入图片描述

不会创建?点击此处

5.2 修改 my.cnf配置文件


  • master的my.cnf配置文件

#mysql master1 config

[mysqld]

server-id = 1 # 节点ID,确保唯一

log config

log-bin = mysql-bin #开启mysql的binlog日志功能

sync_binlog = 1 #控制数据库的binlog刷到磁盘上去 , 0 不控制,性能最好,1每次事物提交都会刷到日志文件中,性能最差,最安全

binlog_format = mixed #binlog日志格式,mysql默认采用statement,建议使用mixed

expire_logs_days = 7 #binlog过期清理时间

max_binlog_size = 100m #binlog每个日志文件大小

binlog_cache_size = 4m #binlog缓存大小

max_binlog_cache_size= 512m

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值