mysql双向热备_mysql双机双向热备

8d73cc3389f330f3629afd45b3a3a7a6.png

c0efbbc2fe062d728c5d4c6201d617cf.png

因为是双向备份,所以配置中很多操作是重复的,只是主从顺序不一致,一个正向一个反向。到这里已经实现了双向备份,现在可以在两个库中分别做一些操作看看效果。

目前只配置了db1以及其备份的双向主从,也就是仅保证了一个MT5使用教程www.gendan5.com/mt5.htmlschema的热备,而实际应用中往往使用多个schema减轻单台服务器的压力,如本文中机器A的schema备份在B上,B的备份在C上,有些备份配置成一个环状。需要注意的是,当在机器B上配置热备时,配置master或者slave不能在之前的数据库实例中进行,同一个端口号上重复配置会将前一个覆盖,因此,需要利用mysqld_multi 单机启动多个mysql 实例,配置时在另一个mysql实例中完成。mysqld_multi的配置查看博文:MySQL之——Linux单机启动多个MySQL实例(mysqld_multi )

三、双向备份说明

主库必须启用Bin log,主库和从库必须有唯一的Server Id

从库必须清楚了解从主库的哪一个Bin log文件的哪一个偏移位置起开始复制

从库可以从主库只复制指定的数据库,或者数据库的某些数据表

主库和从库的数据库名称可以不一样,不过还是推荐使用一样的名称

主库和从库的MySQL版本需保持一致

从MySQL3.23.15以后,MySQL支持单向的异步复制。也就是说,1台MySQL服务器充当Master(主库),1台或多台MySQL服务器充当Slaves(从库),数据从Master向Slaves进行异步复制。注意,这种复制是异步的,有别于MySQL的同步复制实现(这种实现称做MySQL集群,MySQL Cluster)。

当主库有更新的时候,主库会把更新操作的SQL写入二进制日志(Bin log),并维护一个二进制日志文件的索引,以便于日志文件轮回(Rotate)。在从库启动异步复制的时候,从库会开启两个I/O线程,其中一个线程连接主库,要求主库把二进制日志的变化部分传给从库,并把传回的日志写入本地磁盘。另一个线程则负责读取本地写入的二进制日志,并在本地执行,以反映出这种变化。较老的版本在复制的时候只启用一个I/O线程,实现这两部分的功能。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值