环境
-
主机 Ubutun 16.04,ip:192.168.6.129,mysql 5.7
-
从机 Ubutun 16.04,ip:192.168.6.135,mysql 5.7
-
两台服务器mysql能够远程连接
主机配置
-
编辑 /etc/mysql/my.cnf,修改完后重启mysql服务
server_id=129 #保证整数且唯一,我用的ip末尾
log-bin=mysql-bin
binlog-do-db=answer #answer为同步数据库
-
授权用作同步数据的用户
mysql -uroot -p #root登录mysql
grant replication slave,reload,super on *.* to slave@192.168.241.135 identified by 'root';
#后面我遇到如下错误
[Note] Access denied for user 'slave'@'192.168.241.129' (using password: YES)
[ERROR] Slave I/O for channel '': error connecting to master 'slave@192.168.241.129:3306'
#再授权解决
grant replication slave,reload,super on *.* to slave@'%' identified by 'root';
-
查看主机配置
从机配置
- 编辑 /etc/mysql/my.cnf,修改完后重启mysql服务
server_id=135
replicate-do-db=answer #同步数据库名称
- 配置同步,分别填入主机配置中的参数
mysql -uroot -p #root登录mysql
stop slave; #关闭同步
change master to master_host='192.168.241.129',master_user='slave',
master_password='root', master_log_file='mysql-bin.000001',master_log_pos=467;
- 开启同步,查看状态,两个yes即为成功
start slave;
show slave status\G