windows 下mysql主从复制配置

1.准备工作:两台服务器上的两套数据库服务

2.原理:

mysql要做到主从复制,其实依靠的是二进制日志,即:假设主服务器叫A,从服务器叫B;主从复制就是B跟着A学,A做什么,B就做什么。那么B怎么同步A的动作呢?现在A有一个日志功能,把自己所做的增删改查的动作全都记录在日志中,B只需要拿到这份日志,照着日志上面的动作施加到自己身上就可以了。这样就实现了主从复制。

3. 实现步骤

(1)首先修改mysql的配置文件,使其支持二进制日志功能。

   a.打开主服务器的配置文件my.ini,在[mysqlId]下面输入:

 log-bin=mysql-bin  //将mysql二进制日志取名为mysql-bin

 server-id=101 //为服务器设置一个独一无二的id便于区分

   b.保存以后重启服务。

 从服务器配置如同主服务器的配置,只是server-id不一样就可以了。

(2)在主服务器上为从服务器分配一个账号,就像一把钥匙,从服务器拿着这个钥匙,才能到主服务器上来共享主服务器的日志文件。

  命令:mysql -u root -p *******,进入本机mysql服务的操作界面,运行,GRANT replication slave ON *.* TO 'slave'@'%' IDENTIFIED BY '111111'; 

(3)查看主服务器BIN日志的信息(执行完之后记录下这两值,然后在配置完从服务器之前不要对主服务器进行任何操作,因为每次操作数据库时这两值会发生改变)show master status;

(4)配置从服务器,进入从数据库服务器操作界面,

 关闭slave(如果你以前配置过主从的话,一定要先关闭)命令:stop slave;

 输入下面命令:连接主服务器

 >CHANGE MASTER TO

 >MASTER_HOST=”192.168.1.6”,

 >MASTER_USER=”slave”,

 >MASTER_PASSWORD=”111111”,

 >MASTER_LOG_FILE=”mysql-bin.000003”,

 >MASTER_LOG_POS= 225 ;

 参数解释:MASTER_HOST  :  设置要连接的主服务器的ip地址

    MASTER_USER  :  设置要连接的主服务器的用户名

    MASTER_PASSWORD  :  设置要连接的主服务器的密码

    MASTER_LOG_FILE  :  设置要连接的主服务器的bin日志的日志名称,即第3步得到的信息

    MASTER_LOG_POS  :  设置要连接的主服务器的bin日志的记录位置,即第3步得到的信息,(这里注意,最后一项不需要加 引号。否则配置失败)

 在从服务器配置完成,启动从服务器:

 命令: start slave;

(5)查看是否配置成功 

命令: show slave status;

4.指定数据库主从复制设置

# 不同步哪些数据库  

binlog-ignore-db = mysql  

binlog-ignore-db = test  

binlog-ignore-db = information_schema  

  

# 只同步哪些数据库,除此之外,其他不同步  

binlog-do-db = game




你可能感兴趣的:(mysql)