[z]如何在一台windows主机上搭建mysql主-主-从复制

一、双主复制的配置

1. 先再生成一个mysql服务。
2. 双主的配置步骤参考这里
  但在执行 change master 时,发生了一个错误:
    ERROR 1201 (HY000): Could not initialize master info structure; more error messages can be found in the MySQL error log
  日志信息为:
    130517 9:18:11 [ERROR] Could not find target log during relay log initialization
    130517 9:19:43 [ERROR] Failed to open the relay log '.\LENOVO-DA26F535-relay-bin.000001' (relay_log_pos 4)
  通过reset slave解决,参考这里
3. 搭建完毕后,进行双主a、b的测试,二者可以实现复制。
  注意这里有个自增列的同步问题,这里有一个不错的解决方案:http://www.cnblogs.com/zhongweiv/archive/2013/02/01/MySQL_Replication_Circular.html

二、双主+从配置

因为以前b节点作为master时,带有两个slave。当a、b双主配置完毕后,启动b原来带的两个slave。此时发现:
(1)b节点与这两个slave工作正常。
(2)a、b节点双主工作正常
(3)a节点的变化复制到b节点后,无法再从b节点复制到两个slave!
原来是少设置了参数log_slave_updates=1(参考这里)。导致a传递到b的relay log无法再次生成bin log。

两个主节点都设置上这个参数,重启后即可实现级联复制。


附:my.ini中[mysql]的相关配置如下:

[mysqld]
# master config | yuechaotian
server-id=3309
log-bin=mysql-bin
log-bin-index=mysql-bin.index
binlog-do-db=test
relay-log=relay-bin
relay-log-index=relay-bin-index
replicate-do-db=test
log_slave_updates=1
……

注意:如果是在生产环境中,还需要设置两个主节点的自增列一个为奇数,一个为偶数,以避免冲突。

auto_increment_increment=2      auto_increment_increment=2
auto_increment_offset=1            auto_increment_offset=2
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值