zoukankan      html  css  js  c++  java
  • windows下 MySQL数据库双向同步 配置步骤

          最近在项目中遇到了要实现服务器上MySql数据双向同步,在网上找了很多资料,但是大部分都是在liux系统下配置的,

    而且都是互相转载,没有一个详细的步骤,于是决定写一个windows系统下的完整配置,与大家分享,如有不足之处,

    请大家指正。

    工具/原料

    • 两台服务器,操作系统均为window2012 数据中心版,其中一台服务器为A,IP地址为:192.168.1.2,另外一台为B,IP地址为:192.168.1.3

    • mysql  的版本最好保持一致,大版本号一定要一致,小更新不影响,比如5.6.10,5.6.11这两个版本就算一致,如果一个是5.5,一个是5.6就不行

    方法/步骤

    添加同步账户。向两台服务器上的mysql添加账户,进入Mysql命令界面,输入密码进入。

    如下图:执行Mysql命令,mysql> grant replication slave,replication client on *.*     to repl@'192.168.1.%' identified by '123456';

    说明:repl是账户名称,123456是对应的密码,192.168.1.%是局域网内可访问,也可指定某一台服务器,把%换成对应的IP即可。注:以上命令在A、B服务器上都要执行。

    image

    image

    配置A服务器。

    找到mysql的配置文件my.ini,在[mysqld]下面添加以下配置:

    log_bin=mysql-bin        #说明:log_bin:指定二进制日志文件的位置和命名
    server_id=1                  #server_id:MySql服务器标示,必须保证唯一
    replicate_do_db=ftest   #replicate_do_db:要同步的数据库名称,多个用逗号隔开,此项可不配置
    sync_binlog=1              #sync_binlog:是否将二进制日志文件同步到磁盘上,大于0为开户
    log_slave_updates=1      #将事件自动写到填制日志中注

    注:保存文件后,要重新启动MySql服务,然后同样的操作在B服务器上操作一遍。(此处要注意server_id绝对不能相同,如果相同就会出错)

    image

    imageimage

    两台服务器配置完成以后,先在B服务器上开启复制功能。这一步不需要修改my.ini文件,只需要执行mysql命令,以下是命令:

    mysql> change master to master_host='192.168.1.2',   

          -> master_user='repl',   

          -> master_password='123456',   

          -> master_log_file='mysql-bin.000001',   

          -> master_log_pos=0;

    说明:master_host:A服务器的IP地址     

            master_user:我们在第一步创建的同步账号    

            master_password:对应的账号密码     

            master_log_file:二进制日志文件名称,不一定是这个名称,可以用命令来查看                     

            用 show master statusg;来查询名称和pos    

            master_log_pos:用上面的命令可以查出来此值

    image

    开启复制功能

    用 show slave statusg; 来检查复制是否已经正常运行,若Slave_IO_State为空,Slave_IO_Running、Slave_IO_Running为NO,

    则复制功能未运行,我们用 start slave;来启动 复制功能。

    再用命令 show slave statusg; 查看,这时我们看到Slave_IO_State为:Waiting for master to send eventSlave_IO_Running、

    Slave_SQL_Running为YES,表明配置已经成功,复制功能已经正常运行。然后配置A服务器,步骤和配置B服务器一样。

    注:一定要小心配置里面的参数,要把对应的master_host、master_log_file、master_log_pos配置正确

    image

    image

    image

    测试数据是否同步成功,在A服务器上修改ftest数据库的一个表数据,然后在B服务器上查看,数据是否变化了呢,如果变化了,

    说明已经配置成功。然后修改B服务器的数据,再去A服务器上查看,如果数据也变化了,双向同步 的数据同步功能就成功了.

  • 相关阅读:
    【原】cookie和session的区别
    【总结】资源汇总(二)
    【总结】资源汇总(一)
    【原】linux设置网络延迟/丢包操作
    【原】Web Polygraph 安装
    【原】openresty学习
    【原】nginx配置文件
    【原】postman常用设置全局变量的js片段
    application.yml配置文件没有出现小绿叶子
    The project com.myself.springcloud:cloud2021:1.0-SNAPSHOT (D:ideaOldProjectcloud2021pom.xml) has 1 error;idea Module '****' already exist in project. Please, specify another name.
  • 原文地址:https://www.cnblogs.com/running-mydream/p/4581687.html
Copyright © 2011-2022 走看看