今天为了帮实习导师排查一个问题,需要设置两个主从,由于恰逢LINUX环境不可用,只能选择在WINDOWS下搭主从,遇到了很多坑,记录一下。
第一步,拷贝数据库
为了避免调崩了自己的mysql都不能用,这里我把我使用的mysql复制了三份。
第二步,修改my.ini
第三步,删除auto.cnf(重要!!!)
如果直接拷贝文件来安装服务,系统不会生成UUID会导致UUID与其他的两个库相同,Slave_IO_Runing会一直为no。
第四步,安装服务,启动
务必要打对路径和保证端口不冲突,前者会一直卡在启动,你只能通过
sc queryex MySQL33
taskkill /f /pid 11332(这是上面查出的pid)
结束掉进程再sc delete MySQL33,再重新安装服务
后者会导致你一直启动报错
第五步,主从设置
网上有很多教程,只要到这里配置对了基本上就没问题。主要分为
1.修改my.ini,重启服务
主库:server-id=1
binlog-do-db=dbtest_0000
log-bin=mysql-bin
从库:server-id=2
log-bin=mysql-bin
replicate-do-db=dbtest_0000
2.主库新建user,赋予权限
create user 'test1'@'%' IDENTIFIED BY '123456';
GRANT ALL ON *.* TO 'test1'@'%';
3.从库change
change master to master_host=localhost,master_port=3307,master_user='test1',
master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=154;
master_log_pos是主库show master status;得到的binlog位置
以上。