1、安装phpstudy,mysql的文件在以下目录 D:\phpstudy\Extensions\MySQL5.7.26
2、将其拷贝两份,分别放在 D:\mysql\MySQL5.7.26.1和 D:\mysql\MySQL5.7.26.2
3、修改 D:\mysql\MySQL5.7.26.1\data\auto.cnf 中的server-uuid(两个UUID一样会报错)
4、修改D:\study\MySQL5.7.26.1\my.ini,修改内容如下:
[mysql]
default-character-set=utf8
[mysqld]
port=3307
basedir=D:/mysql/MySQL5.7.26.1/
datadir=D:/mysql/MySQL5.7.26.1/data/
……
server_id=1
……
binlog-do-db=test
log-bin=mysql-bin
[client]
port=3307
default-character-set=utf8
5、修改D:\study\MySQL5.7.26.2\my.ini,修改内容如下:
[mysql]
default-character-set=utf8
[mysqld]
port=3308
basedir=D:/mysql/MySQL5.7.26.2/
datadir=D:/mysql/MySQL5.7.26.2/data/
……
server_id=2
……
replicate-do-db=test
[client]
port=3308
default-character-set=utf8
6、启动两个服务(启动的bat文件如下),并各创建一个名为test的数据库
d:
cd \mysql\MySQL5.7.26.1\bin
start mysqld.exe
cd \mysql\MySQL5.7.26.2\bin
start mysqld.exe
pause
7、在主库中创建用于数据同步的用户,并授予权限
create user 'testuser'@'127.0.0.1' identified by '123456';
grant replication slave on *.* to 'testuser'@'127.0.0.1' identified by '123456';
8、查看主库的状态:show master status;(记住File和Position,如mysql-bin.000001,154)
9、在从库中执行指令,设置主从关联
change master to master_host='127.0.0.1',master_port=3307,master_user='testuser',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=154;
10、开启从库同步:start slave; 查看从库状态:show slave status;
11、若Slave_IO_Running和Slave_SQL_Running为Yes则主从同步可用,Slave_IO_State为Waiting for master to send event
12、可在CMD下执行以下命令,关闭两个数据库服务
taskkill /f /t /im mysqld.exe
13、若Slave_IO_Running和Slave_SQL_Running其中一个为NO,可搜索相关解决方案
14、有问题欢迎留言或者发私信给我来讨论
参考文章(若涉及侵权可联系删除):