mysql双master配置

来源:互联网 发布:abc分类法 淘宝 京东 编辑:程序博客网 时间:2024/06/11 20:05

mysql能进行双master配置,也就是A是B的slave,同时B是A的Slave,A,B2台机器上同时运行着2套复制的环境,a,b的机器还可以是别的机器的master,双master上面放个负载均衡器,可以减小单master的压力,使用时候需要确保2个机器上的更新数据是不同的,有可能a上的变更发送给b ,又返回给a,实际上不会发生,mysql将服务器id写入到每个事件里,服务器看到事件中的server_id跟自己一样就会跳过去,但多个server对同个表插入的时候,自增主键就有可能冲突,可以设置auto_increment_increment,auto_increment_offset这两个参数来降低影响。主要的配置是在配置文件中关闭只读,打开slave的记录更新

#read_only = 1
log-slave-updates = 1
#expire_logs_days = 30

然后再2台机器备份恢复成一致状态

在互相的change mater到对方,在看下slave状态是否正确

双主结构有2中不同的配置

主动-主动,写操作同时达到2个服务器,然后将变更发送给对方。

主动-被动,负责处理写的操作是主动master,另外一个只是保持同步的状态。

关于quto_increment_offset 与auto_increment_increment的使用见

http://blog.csdn.net/aoerqileng/article/details/51172833

一般使用的方式

在机器A上设置

set global auto_increment_increment=2;

set global auto_increment_offset=1;

在机器B上设置

set global auto_increment_increment=2;

set global auto_increment_offset=2;


参考文章参见下面:

http://sookk8.blog.51cto.com/455855/563519/

0 0
原创粉丝点击