欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

MySQL主主备份配置(Windows)

程序员文章站 2024-03-20 15:16:46
...

首先准备两台电脑,全部安装MySQL(我安的5.7),然后分别查看一下ip地址,我的两个ip分别是:
192.168.1.102(简称102)
192.168.1.119(简称119)
一、配置两个MySQL的my.ini如下:
102my.ini:

server-id=1
replicate-do-db=test
auto-increment-offset=1
auto-increment-increment=2
log-bin=mysql-bin
log-bin-trust-function-creators=1

119my.ini:

server-id=2
replicate-do-db=test
auto-increment-offset=2
auto-increment-increment=2
log-bin=mysql-bin
log-bin-trust-function-creators=1

replicate-do-db=要同步的数据库名
auto-increment-offset=自增列初始值
auto-increment-increment=自增列增量
log-bin=mysql-bin二进制日志
log-bin-trust-function-creators=1-------------默认情况下mysql会阻止主从同步的数据库function的创建,这会导致我们在导入sql文件时如果有创建function或者使用function的语句将会报错。
除了server-id外,直接加在my.ini最下方即可,server-id应该每个里面都是1,修改其中一个为2,如果没有或者被注掉了再和其他配置一起添加进去。
二、两个MySQL重启MySQL服务,cmd进入到mysql中(先后顺序无所谓)
三、互相授权
102中:

grant replication slave, replication client on *.* to 'cmy'@'192.168.1.119' identified by '123456'
flush privileges; 

119中:

grant replication slave, replication client on *.* to 'cmy'@'192.168.1.102' identified by '123456'
flush privileges; 

cmy是自定义的,随便写,123456就是你MySQL的密码。
四、查看FileSet和Position
分别执行
show master status;记住两个MySQL的FileSet和Position,显示如下
MySQL主主备份配置(Windows)
标黄的就是
五、停止slave
stop slave;
六、相互设置同步的日志节点
102:

change master to 
master_host='192.168.1.119', 
master_port=3306,//端口号改成自己的
master_user='cmy',
master_password='123456',
master_log_file='mysql-bin.000003',:
master_log_pos=1444;

119:

change master to 
master_host='192.168.1.102', 
master_port=3306,//端口号改成自己的
master_user='cmy',
master_password='123456',
master_log_file='mysql-bin.000003',:
master_log_pos=630;

七、启动slave
start slave;
八、查看一下是否成功
show slave status\G(注意,这个后面没有分号),两个MySQL执行后显示如下则配置成功:
MySQL主主备份配置(Windows)
圈中的两项都为Yes表示成功,有时会出现下面这种情况,我就出现了:
MySQL主主备份配置(Windows)
我是因为端口号写错导致的,每个人情况不同,如果出现错误,重新配置一下就好了,希望能够帮助到你。另外,高端潮鞋,本人二维码↓
MySQL主主备份配置(Windows)

相关标签: MySQL mysql