一、环境:
A:主机
1、IP:192.168.***.29
2、环境:Win10
3、Mysql:8.0.23 port 3306
B:从机
1、IP:192.168.***.128
2、环境:VM虚拟机Win10
3、Mysql:8.0.23 port 3306
二、主机配置
1、my.ini文件配置
server-id=29
log-bin=mysql-bin
binlog-do-db=bx-vm
2、重启主机mysql
注:如果重启中无法启动,则检查my.ini文件,调试文件中新增三个参数的位置,8.0.23版本需追加 [mysqld] 中;
3、 手动将主机数据库结构及数据同步至从机数据库
可用navicat / sqlyog 的同步复制功能一键同步复制,复制之后保持两边一致并不修改;
4、通过管理员 CMD 登录主机 Mysql
创建主机用户
create user 'master'@'192.168.***.29' identified by '123456';
给用户分配主从复制的权限
grant replication slave on *.* to 'master'@'192.168.***.29' identified by '123456';
如果报错无法执行,去掉identified by '123456';
grant replication slave on *.* to 'master'@'192.168.***.29';
查看主机状态
show master status;
三、从机配置
1、my.ini文件配置
只需要添加 server-id = 128
重启mysql
net stop mysql;
net start mysql;
2、管理员CMD登录从机Mysql
配置主从复制的详细信息,参数均取主机参数
change master to master_host='192.168.***.29',master_user='master',master_password='123456',master_port=3306,master_log_file='mysql-bin.000001',master_log_pos=156;
3、启动从机服务器
start slave;
4、查看从机slave状态
show slave status \G;
如果看到以下截图,说明配置成功
如果两个有一个不是Yes,说明配置过程中存在错误,需检查;
或 重启后再检查从机状态;
stop slave;
start slave;
show slave status \G;
错误截图如下:
四、主从复制测试
主库创建表
从库刷新看见自动同步成功