您的位置:首页 > 运维架构 > Linux

Centos 7环境下配置MySQL 5.7读写分离

2017-10-16 15:39 441 查看
1.实验目的:

实现在Centos 7系统环境下,MySQL5.7读写分离。

2.实验条件:

MySQL主服务器:Centos 7桌面环境,IP:10.10.11.31

MySQL从服务器:Centos 7 命令行环境,IP:10.10.11.10

3.实验步骤:

首先利用Navicat工具,在MySQL主、从服务器上分别建立一个数据库test。

MySQL主服务器配置:

登录MySQL命令行环境,创建一个用于数据复制的数据库账户repl,密码为:Password@12345。使用以下命令实现:

CREATE USER 'repl'@'10.10.11.%' IDENTIFIED BY 'Password@12345';




然后运行命令:

grant replication slave on *.* to 'repl'@'10.10.11.%';




打开/etc/my.cnf文件,在其中的【mysqld】节点下,添加以下配置:

log_bin=mysql-bin
server-id=1
binlog-do-db=test


然后重启MySQL服务:

systemctl restart mysqld.service


备注:如果防火墙开着,还需要配置防火墙。

firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload


MySQL从服务器配置:

在Centos命令行模式下,打开/etc/my.cnf文件,在节点【mysqld】下添加如下配置:

server-id=2

replicate-do-db=test


保存后,设置连接主服务器的信息。

mysql> stop slave;
mysql> change master to
mysql> master_host='10.10.11.31',
mysql> master_user='repl',
mysql> master_password='Password@12345';


启动MySQL从数据库事件检查线程。

start slave;


读写分离效果查看:

在Master服务器中的test数据库中建立Student表,并向其插入几条数据,如下图所示:



然后,打开slave服务器中的test数据库,查看结果:



运行命令查看主从服务器的读写情况:

show slave status \G;


查看到结果为:



至此,MySQL读写分离基本配置完成。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: