Mysql 主主数据同步

原理跟主从差不多,将从按主一样配置一次。

服务器A:192.168.0.1

服务器B:192.168.0.2

 

服务器A配置:

 

1、修改my.cnf,添加以下内容

server-id=1
binlog-do-db = test          #同步的数据库名
binlog-ignore-db = mysql  #排除库,这个不做同步
log-slave-updates 
replicate-do-db = test 
replicate-ignore-db = mysql 
auto_increment_increment=2 #防止主主同步主键冲突
auto_increment_offset=1 #自增起点

2、对服务器B进行授权

grant replication slave on *.* to root@192.168.0.2 identified by '123456';

3、启动mysql

 

服务器B配置:

 

1、修改my.cnf,添加以下内容

server-id=2
binlog-do-db = test          #同步的数据库名
binlog-ignore-db = mysql  #排除库,这个不做同步
log-slave-updates 
replicate-do-db = test 
replicate-ignore-db = mysql 
auto_increment_increment=2 #防止主主同步主键冲突
auto_increment_offset=2 #自增起点

2、对服务器B进行授权

grant replication slave on *.* to root@192.168.0.1 identified by '123456';

3、启动mysql

 

在服务器A中执行以下SQL命令:

change master to master_host='192.168.0.2', 
master_user='root', 
master_password='123456', 
master_log_file='mysql-bin.000010',  #这个在服务器B中执行SQL:show slave status\G; 命令中查询该字段值
master_log_pos=107;                  #这个在服务器B中执行SQL:show slave status\G; 命令中查询该字段值

 

在服务器B中执行以下SQL命令:

change master to master_host='192.168.0.1', 
master_user='root', 
master_password='123456', 
master_log_file='mysql-bin.000010',  #这个在服务器A中执行SQL:show slave status\G; 命令中查询该字段值
master_log_pos=107;                  #这个在服务器A中执行SQL:show slave status\G; 命令中查询该字段值

至此完成配置,测试过程就不详述了。

posted @ 2013-05-15 17:43  unno  阅读(147)  评论(0)    收藏  举报