一、主库修改
1、my.ini文件[mysqld]下添加下面两行 (linux文件为my.cnf)
server-id=1 #设置server-id(唯一)
log-bin=master-bin #开启二进制日志
2、执行命令,修改外部对外访问权限并刷新
grant all privileges on *.* to 'root'@'%' identified by '123456';
grant replication slave on *.* to 'root'@'%' identified by '123456'; (root:用户,123456:root用户的SQL密码,%:可以改为从库的IP)
flush privileges;
(可以自己创建新用户,然后修改外部对外访问的权限)
3、执行命令查看master状态(注意二进制文件名(master-bin.000001)和位置(7501))
show master status;
二、从库修改
1、my.cnf文件[mysqld]下添加下面两行
server-id=2 #设置server-id(唯一)
relay-log-index=slave-relay-bin.index
relay-log=slave-relay-bin
2、如果从库没有外部对外访问权限则重复主库步骤2,若已配置则跳过,
3、执行同步SQL
change master to master_host='主库IP地址',master_port=3306,master_user='root',master_password='123456',master_log_file='master-bin.000001',master_log_pos=7501;(master-bin.000001:主库二进制文件名,7501:主库位置。注意修改成自己的参数)
4、启动slave同步进程;并查看slave状态
start slave;(启动)
show slave status\G;(查看状态)
如果两个都为“Yes”表示主从设置同步成功,然后验证。
我的主库是window系统,从库为CentOs.