当前位置: 移动技术网 > IT编程>数据库>Mysql > linux 安装 MySql 5.7.20 一主多从配置【亲测】 - 之三

linux 安装 MySql 5.7.20 一主多从配置【亲测】 - 之三

2020年07月21日  | 移动技术网IT编程  | 我要评论

1、前言

         首先要保证主从两台数据库的版本,数据库表等一致, 本教程是基于5.7.20,64位的mysql数据库,系统是centos 7,主从均为同一个虚拟机

2、一主三从架构架构图

 

3、环境配置(先将各个服务器停掉,删除掉中文注释)

3.1 在MySQL 主服务器(3307) 配置文件my.cnf里面加入

log-bin = master-bin  #开启二进制日志
server_id = 3307  # 表示server编号,编号要唯一

3.2 在MySQL 从服务器(3308) 配置文件my.cnf里面加入

server_id = 3308  # 表示server编号,编号要唯一

3.3 在MySQL 主服务器(3309) 配置文件my.cnf里面加入

server_id = 3309  # 表示server编号,编号要唯一

3.4 在MySQL 主服务器(3310) 配置文件my.cnf里面加入

server_id = 3310  # 表示server编号,编号要唯一

4、主从服务器设置

4.1 主服务器(3307)设置

需要登录到主服务器3307的客户端
[root@2snqobz5vv1d7s bin]# cd /program/mysql-5.7.20/bin/
./mysql -uroot -p -P3307 -h127.0.0.1

(1)、查看主服务器状态
mysql> show master status\G;


(1)、在主服务器上创建复制数据的账号并授权
mysql> grant replication slave on *.* to 'copy'@'%' identified by '123456';

mysql> flush privileges;
注意:该语句可完成授权、创建用户、修改密码操作
(2)、查看主服务器状态
mysql> show master status\G;

备注: 

1、 第一次查看主服务器的状态的偏移量是154

2、新增copy账户后,偏移量变化为589,说明新增账户针对数据库也做了写的操作,由于从服务器不需要该账户

 因此把该偏移量退回原来的值

(3)、如果主服务器状态不是初始状态、需要重置状态

执行命令 : mysql>  reset master

4.2 从服务器(3308 | 3309 | 3310)设置

需要登录到主服务器3308 | 3309 | 3310 |的客户端
[root@2snqobz5vv1d7s bin]# cd /program/mysql-5.7.20/bin/
./mysql -uroot -p -P3308 -h127.0.0.1
./mysql -uroot -p -P3309 -h127.0.0.1
./mysql -uroot -p -P3310 -h127.0.0.1

(1)、查看主服务器状态
mysql> show slave status;

(2)、如果从服务器不是初始状态,建议重置一下

stop slave;  # 停止复制,相当于终止从服务器上的IO和SQL线程

reset slave;

(3)、设置从服务器的master

在从服务器客户端执行

注意:以下参数根据4.1相关信息而定

mysql>  change master to master_host='192.168.16.63', master_port=3307,master_user='copy',master_password='123456',master_log_file='master-log.000001',master_log_pos=154;

mysql> flush privileges;

(4)、在从机器上执行开始复制命令

mysql>  start slave;

mysql> flush privileges;

(5)、查看主服务器状态
mysql> show slave status;

本文地址:https://blog.csdn.net/yh250648050/article/details/107465554

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网