MySQL双向复制(主主模式)

2014-11-24 17:58:13 · 作者: · 浏览: 1

MySQL双向复制(主主模式)


环境:


A: 192.168.1.1 没有数据


B: 192.168.1.2 没有数据


在A的[mysqld]字段下增加:


auto-increment-increment = 2 (增长值) A上就会 1,3,5,7这样增长


auto-increment-offset = 1 (初始值)


在B的[mysqld]字段下增加:


auto-increment-increment = 2 (增长值) B上就会2,4,6,8这样增长


auto-increment-offset = 2 (初始值)


因为是双向备份,可能产生主键重复等问题,添加这两个参数防止主键重复


注意:server-id = 1 改成 server-id = 2


重启数据库


在A上


mysql> grant replication slave on *.* to 'beifen'@'192.168.1.2' identified by '123'; 创建 beifen用户,密码设置为123 并授权给192.168.1.2使用。



在B上


mysql> grant replication slave on *.* to 'beifen'@'192.168.1.1' identified by '123'; 创建 beifen用户,密码设置为123 并授权给192.168.1.1使用。



在A上:


查询主数据库的状态,并记下File和Position的值,


在B上


在A上:


mysql>change master to master_host=’192.168.1.2’,master_user=’beifen’,master_password=’123’,master_log_file=’mysql-bin.000016’ ,master_log_pos=106;


在B上:


mysql>change master to master_host=’192.168.1.1’,master_user=’beifen’,master_password=’123’,master_log_file=’mysql-bin.000010’ ,master_log_pos=257;


在A .、B上分别执行


启动slave同步


mysql > start slave;


在A、B上分别检查主从同步,如果您看到Slave_IO_Running和Slave_SQL_Running均为Yes,则主从复制连接正常。


mysql > show slave status\G