CentOS7.0下为MySQL5.6.34配置master和slave

上一篇博客有介绍如何在CentOS7.0下安装MySQL5.6.34,这里就不再重复介绍安装问题,直接进入正题。

首先,确保master主服务器防火墙关闭。

命令如下:

systemctl stop firewalld.service#停止firewall

systemctl disable firewalld.service#禁止firewall开机启动

CentOS7默认的防火墙是firewall,不是iptables,如果想使用iptables可以用yum进行安装,命令:yum -y install iptables-services


1.配置Master服务器

vi /etc/my.cnf

在[mysqld]下面添加如下配置:

#配置二进制日志

log-bin=master-bin

log-bin-index=master-bin.index

#为服务器增加一个id标识,防止跟其他Slave冲突,常用的命名方式是用ip的最后三位,同一局域网中ip后三位不会相#同,便于管理,这里为了简单,就只写为1

server-id=1


重启Master服务器上的MySQL,命令:service mysql restart


2.在Master上创建一个复制用户

mysql> grant replication client,replication slave on *.* to
-> 'repl'@'%'
-> identified by 'repl';
Query OK,0 rows affected (0.04 sec)

注:%表示允许在任何机器上远程访问,可以自己定义一个确定的IP地址,这样会更安全些

mysql>flush privileges;//刷新权限

注:可以用命令mysql>show master status \G 查看当前Master的状态,状态如下:

*************************** 1. row ***************************
File: master-bin.000002
Position: 422
Binlog_Do_DB:

Binlog_Ignore_DB:
Executed_Gtid_Set:
1 row in set (0.00 sec)

这里我们是对所有的库和表都进行复制操作,所以就不需要忽略任何库,直接默认就行


3.配置Slave服务器

在[mysqld]下面添加如下配置:

server-id=2
relay-log-index=slave-relay-bin.index
relay-log=slave-relay-bin


重启Slave服务器上的MySQL,命令:service mysql restart


4.连接Master和Slave

mysql> change master to
-> master_host='192.168.213.130',//这里输入Master的ip地址,可以用ifconfig命令查看
-> master_user='repl',//这个就是前面建立的用户名和密码
-> master_password='repl';

mysql> start slave;//启动slave

mysql> show slave status\G //查看Slave的状态

状态如下:

Slave_IO_State: Waiting for master to send event 表示成功连接 Slave与Master,之后就可以在Master库中进行查询操作了

相关文章

linux下开机自启: 在/etc/init.d目录下新建文件elasticsear...
1、因为在centos7中/etc/rc.d/rc.local的权限被降低了,所以...
最简单的查看方法可以使用ls -ll、ls-lh命令进行查看,当使用...
ASP.NET Core应用程序发布linux在shell中运行是正常的。可一...
设置时区(CentOS 7) 先执行命令timedatectl status|grep &...
vim /etc/sysconfig/network-scripts/ifcfg-eth0 B...