文件服务器/备库(192.168.0.1) 数据库服务器/备份文件服务器(192.168.0.2)
数据库实时同步
一、在主数据库服务器里,同样打开隐藏文件,找到C:\ProgramData\MySQL\MySQL Server 5.6路径下的my.ini,修改其中配置。
(1)修改server-id,两台服务器id需要不一样
(2)打开注释掉的log-bin,修改为
log-bin=mysql3306-bin(不指定也可以)
(3)添加
log-bin-trust-function-creators=1
(4)重启mysql服务
(5)打开cmd,如果在系统环境变量配置了mysql的环境变量,可以直接输入
mysql –uroot –p
进入mysql
(6)进入mysql后,创建slave用户,并授权
mysql > createuser ‘SlaveUser’@’192.168.0.1’identified by ‘123456’;
mysql > grantreplication slave on *.* to ‘SlaveUser’@’192.168.0.1’ identified by ‘123456’;
(7)查看 master 状态
mysql > showmaster status;
记录下file 和position值,一会在从数据库服务器配置使用
二、在从数据库服务器里,
打开隐藏文件,找到
C:\ProgramData\MySQL\MySQL Server 5.6路径下的my.ini,修改其中配置。
(1)修改server-id,两台服务器id需要不一样
(2)打开注释掉的log-bin,修改为
log-bin=mysql3306-bin(不指定也可以)
(3)添加语句
relay-log-index=slave-relay-bin.index
relay-log=slave-relay-bin
(4)添加
log-bin-trust-function-creators=1
#为了防止函数同步出错
(5)重启mysql服务
(6)进入mysql,配置主从同步(这里的master_log_file和master_log_pos就是刚才记录的主数据库里边的file和position)
mysql > changemaster to
>master_host=’192.168.0.2’,
>master_user=’SlaveUser’,
>master_password=’123456’,
>master_port=3306,
>master_log_file=’mysql3306-bin.000001’,
>master_log_pos=120;
mysql > startslave; #启动slave
(4)查看是否配置成功
Mysql > showslave status\G; 如果下列两项都是YES说明成功;
你这个年纪,你怎么睡得着的?
------无名大师