Mysql单项、双向复制功能的配置

 

2种方式,可以通过修改配置文件my.ini或者通过MySqlAdministrator管理工具进行配置,

MySqlAdministrator工具配置最后也是生产my.ini文件,现在就以MySqlAdministrator为例进行说明

有两台机器 A:192.168.1.44,B:192.168.1.12,其中A为Master,B为Slave,配置如下:

1)、配置Master,通过MySqlAdministrator,登录A服务器,进入Setup Variables->log files 页签

     几个主要的配置参数需要配置

     a:Binary Logfile Name:<填你需要设置的二进制日志文件名>

     b:Log update for:<填需要同步的数据名>

     c:Ignore updates for:<填不需要更新的数据>(这个参数可以刻不设,如果有多个,可以在配置文件中加多个)

     切换到 Setup Variables->Replication 页签

     a:配置Server id:<填一个数字,<= 2的32次方 >

配置完后保存,就可以看到my.ini就会多一部分复制的配置项出来

以上配置就完成了Master的基本配置了,我的配置截图:


Mysql单项、双向复制功能的配置_第1张图片

 

配置问后,my.ini的部分截图:


Mysql单项、双向复制功能的配置_第2张图片

 

2)、配置Slave服务器 通过MySqlAdministrator,登录B服务器,进入Setup Variables->Replication 页签

     几个主要需要配置的的参数;

     a:Server id:<填一个数字,<= 2的32次方 >,不能与A服务器相同

     b:Replication these:<需要复制的数据库名>

     c:Innore Dbs:<不需要同步的数据名>

     d:Master hostname:<Master服务器的IP地址>

     e:Master UserName:<Master服务器中有复制权限的用户>

     f:Master password:<Master服务器中有复制权限的用户的密码>

配置完后保存,就可以看到my.ini就会多一部分复制的配置项出来

以上配置就完成了Master的基本配置了,我的配置截图:


Mysql单项、双向复制功能的配置_第3张图片

 

 

配置问后,my.ini的部分截图:



Mysql单项、双向复制功能的配置_第4张图片

 

    3)、重新启动Master服务器

        进入mysql命令符,键入命令:show master status;查看master是否配置成功,成功会返回一条记录,例如:

+------------------+----------+--------------+------------------+

| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+------------------+----------+--------------+------------------+

| mysql-bin.000007 |      106 | test         | mysql            |

+------------------+----------+--------------+------------------+

   4)、重新启动Slave服务器

       注意:默认情况下,slave功能是自动随mysql服务器启动的,如果不想自动启动,需要在配置一个配置项my.ini中 skip-slave-star

       配置界面中是 

       进入mysql命令符,键入命令,show master status \G;

       成功配置后,主要看     

        Slave_IO_Running: Yes

        Slave_SQL_Running: Yes

       都为yes说明配置成功

      如果配置成,手动启动的话,则会显现

        Slave_IO_Running: No

        Slave_SQL_Running: Yes

      这时候通过start slave 命令即可启动slave

  5)、配置完成后,进行测试,在Master中修改的数据,都会复制到slave中去。

 

  双向同步,其实就是在Master上多配置slave的信息,在slave上多配置Master的信息,也就是A-B的一个反过程,注意在配置的时候。

 

  我的双向复制的配置文件my.ini文件,加在 [mysqld]的节点下面

 

  A:服务器:

        server-id=101

        log-bin=mysql-bin

        binlog-do-db=test

        binlog-ignore-db=mysql

        slave_compressed_protocol

        replicate-do-db=test

        replicate-ignore-db=mysql

        master-host=192.168.1.44

        master-user=root

        master-password=admin

        #skip-slave-start

 

B:服务器

        server-id=100

        log-bin=mysql-bin

        binlog-do-db=test

        binlog-ignore-db=mysql

        slave_compressed_protocol

        replicate-ignore-db=mysql

        master-host=192.168.1.12

        master-user=root

        master-password=admin

        replicate-do-db=test

        #skip-slave-start

以上就是复制的配置,如果不想通过界面配置的话,也可以直接修改配置文件,加入重要的配置参数就可以了

 

 

另,改文章只描述了如何配置复制,针对复制使用过程中的问题,可以参考Mysql的手册,关于复制章节的说明

其中双向复制最为重要的一个问题,就是要解决自增列ID冲突的问题,这个问题在Mysql手册中有说明

 

 

你可能感兴趣的:(sql,sql,mysql,server,F#,配置管理)