MySQL主从复制配置

1.  环境

操作系统:CentOS-7

MySQL:mysql-5.6

一台虚拟机又克隆了两台

192.168.102.31  master

192.168.102.56  slave

192.168.102.36  slave

启动/停止

service  mysqld  start|stop|restart
systemctl  start|stop|restart  mysqld

本机的话,直接mysql就可以进去了

2.  主数据库配置

第1步:编辑/etc/my.cnf文件,在[mysqld]下增加如下两行设置:

[mysqld]
log-bin=mysql-bin # 非必需
server-id=1    # 必需

MySQL主从复制配置_第1张图片

第2步:创建用于数据同步的账户

CREATE USER 'repl'@'192.168.102.%' IDENTIFIED BY '123456';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'192.168.102.%';
FLUSH PRIVILEGES;

MySQL主从复制配置_第2张图片

第3步:查看master状态

show master status;

MySQL主从复制配置_第3张图片

MySQL主从复制配置_第4张图片

3.  从数据库配置

第1步:编辑/etc/my.cnf文件,设置server-id

[mysqld]
server-id=2

第2步:执行同步语句,并启动slave

change master to master_host='192.168.102.31', master_user='repl', master_password='123456', master_log_file='mysql-bin.000001', master_log_pos=514;

MySQL主从复制配置_第5张图片

第3步:查看slave状态

show slave status\G;

MySQL主从复制配置_第6张图片

另外一台从数据库也是这样设置

4.  验证是否同步成功

在主数据上操作,从数据库中查看

MySQL主从复制配置_第7张图片

MySQL主从复制配置_第8张图片

5.  设置只读账户

mysql> create user 'pig'@'%' identified by '123456';
mysql> grant select on test.* to 'pig'@'%';
mysql> flush privileges;

 

6.  参考

https://dev.mysql.com/doc/refman/5.7/en/replication-options-slave.html

http://www.cnblogs.com/gl-developer/p/6170423.html

https://www.cnblogs.com/alvin_xp/p/4162249.html

https://www.cnblogs.com/sos-blue/p/6852945.html

你可能感兴趣的:(MySQL主从复制配置)