环境
操作系统:CentOS7
主库a:192.168.6.131 用户名:roota 密码:123456
从库b:192.168.6.132 用户名:rootb 密码:123456
一、账号配权限
在a、b两台服务器上依次赋予REPLICATION SLAVE权限.
在mysql命令模式下:
a
grant replication slave on *.* to 'rootb'@'192.168.6.132' identified by '123456';
b
grant replication slave on *.* to 'roota'@'192.168.6.131' identified by '123456';
二、修改配置文件
在a、b上依次编辑/etc/my.cnf文件,在[mysqld]下增加如下两行设置:
log-bin=mysql-bin
server-id=1
这里的server-id是服务器编号, 两台服务器上的值要设置的不一样. 比如1和2,也可以用IP地址最后一段标识。
三、重启并查看master状态
在a、b上依次执行
systemctl restart mysql
在mysql命令模式下:
slave stop;
flush tables with read lock;
show master status;
a
b
四、执行同步并启动slave
依次得到master状态后,在mysql命令模式下、执行如下命令:
a
change master to
master_host='**192.168.6.132**',master_port=3306,master_user='**rootb**',master_password='123456',master_log_file='**mysql-bin.000001**',master_log_pos=**2946**;
b
change master to
master_host='**192.168.6.131**',master_port=3306,master_user='**roota**',master_password='123456',master_log_file='**mysql-bin.000004**',master_log_pos=**104538**;
开启同步
start slave;
查看salve状态
show slave status\G
如果返回的结果有:
Waiting for master to send event或者Queueing
Slave_IO_Running:Yes
Slave_SQL_Running: Yes
证明成功,可以自行测试