Mysql5.7.20主从配置

来源:互联网 发布:nodejs 在linux下安装 编辑:程序博客网 时间:2024/06/06 04:12

Mysql主从配置笔记,安装完成两个Mysql,版本都是5.7.20,
主库的IP地址为172.17.0.2,从库的ip地址为172.17.0.3
首先在主库(172.17.0.2)上执行:

1.创建用户

GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.*  TO synchrouser@172.17.0.3  IDENTIFIED BY 'Wwe123456!';

代表建立一个synchrouser用户,密码为Wwe123456!,并且,这个主库能允许从库(172.17.0.3)的ip以synchrouser用户来登陆。

2.配置主库

在/etc/my.cnf文件下增加
server-id=2
log_bin=mysql-bin
binlog_format=mixed
我的配置文件如下这里写图片描述
那个server-id在数据库配置中必须是唯一的,重启主库的mysql

3.配置从库

在/etc/my.conf下增加server-id=3,我的配置文件如下
这里写图片描述
重启从库的mysql,
在主库执行sql:show master status;
这里写图片描述
在从库进行连接主库执行如下sql:
change master to master_host=’172.17.0.2’, master_user=’synchrouser’, master_password=’Wwe123456!’,master_log_file=’mysql-bin.000001’,master_log_pos=154;

这里的master_log_file 和msater_log_pos的值都来自于刚刚主库的这条sql:show master status,
这里写图片描述

4.启动主从复制

在从库执行:start slave;
这里写图片描述
代表启动成功了。

5.检查环境是否配置成功

执行 show slave status \G
这里写图片描述
这个 Slave_IO_Running: Yes和Slave_SQL_Running: Yes都为yes代表成功了。,
测试主从复制是否好使,在主库执行sql
这里写图片描述
在从库查看:
这里写图片描述
到这里,全部库的主从配置就完成了,实际应用中可能会用到单个表的同步,或者部分表的同步,只需要在主库的/etc/my.cnf里加上

只复制某个表replicate-do-table=tablename
只复制某些表(可用匹配符)replicate-wild-do-table=tablename%
只复制某个库replicate-do-db=dbname
只复制某些库replicte-wild-do-db=dbname%
不复制某个表replicate-ignore-table=tablename

配置就可以了

原创粉丝点击