Windows 下MySql Replication(复制)配置

  • 环境准备

      到官网下载mysql-installer-web-community-5.7.21.0.msi并安装,选择MySql Workbench,记录安装时root输入的密码。 需要安装在两台机器上,分别作为主、从数据库。

      注意:安装可能失败,需要根据提示安装必要组件,如visual C++ 2013。

   Master机器设置

1, 登录workbench停止服务

2, 找到 my.ini,设置复制方式以及serverId

[mysqld]
log-bin=mysql-bin
server-id=1

 3. 在workbench中创建复制号 repl, 设置角色为复制

 4,记录主数据状态 

运行SHOW MASTER STATUS命令,记录输入结果

FLUSH TABLES WITH READ LOCK
SHOW MASTER STATUS 

mysql-bin.000001	917  

5,把现有数据导出

在Cmd下输入下列命令

cd C:\Program Files\MySQL\MySQL Server 5.7\bin

mysqldump -uuser -p*** --all-databases --master-data > dbdump.db

6,UNLOCK TABLES

 

Slave机器设置

1, 停止服务 server-id=2 再启动服务

2, Setting the Master Configuration on the Slave

CHANGE MASTER TO MASTER_HOST='xxx.xxx.xxx',
MASTER_USER='repl',
MASTER_PASSWORD='repl',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=917;

3,Setting Up Replication with Existing Data

在cmd下导入数据

mysql -uroot -p*** < dbdump.db

 

因我在Master数据库中因建立了tablespace1, 导入前先执行下面语句,以免导入失败

CREATE TABLESPACE tablespace1 ADD DATAFILE 'tablespace1.ibd' Engine=InnoDB;

4, 运行命令START SLAVE

 

尝试修改主数据库中数据,正常情况下数据下自动同步过去。

官方指导文件:https://dev.mysql.com/doc/refman/5.7/en/replication-configuration.html

posted @ 2018-03-21 14:08  Season2009  阅读(168)  评论(0编辑  收藏  举报