win10 mysql 主从复制(异步复制)配置
一:环境
os:win10
mysql:5.7.17
engine:innoDB。
主机ip:192.168.1.132
主机数据库端口:3308
从机ip:192.168.1.190
从机数据库端口:3306
二:主机配置
2.1:
打开my.ini文件,路径在C:\ProgramData\MySQL\MySQL Server 5.7\my.ini。增加如下的配置项即可。
server-id可以起任意的名字,一般取ip最后一段。配置完保存后,重启mysql服务。
2.2:将主机的数据库手动复制到从机上,我用的是navicat的数据传输功能,也可以复制到sql文件中,然后从机执行sql文件来实现复制。注意:复制之后要保证主机上的数据不会发生更新,插入等数据变更操作。
2.3:
登录到主机:由于我的端口是3308,所以在命令中指定了端口
在主机端创建一个用户,给从机连接到主机用。
create user 'mytest'@'192.168.1.190' identified by '123456';
给用户分配主从复制的权限
grant replication slave on *.* to 'mytest'@'192.168.1.190' identified by '123456';
查看master主机的状态信息
show master status
注意上面的mysql-bin.000001 和 980,从机配置的时候要用到。
三:从机配置
3.1
从机只配置server-id即可,配置完重启mysql服务。
3.2
连接到从机服务器
>mysql -u root -p
执行如下命令来配置主从复制的详细信息
change master to master_host='192.168.1.132',master_user='mytest',master_password='123456',master_port=3308,master_log_file='mysql-bin.000001',master_log_pos=980;
启动从服务器的slave复制功能:
start slave;
查看从服务器的slave状态:
mysql> show slave status \G
看到
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
说明主从复制在正常工作。至此over.^_^。