一、案例目标
(1)了解Mycat提供的读写分离功能。
(2)了解MySQL数据库的主从架构。
(3)构建以Mycat为中间件的读写分离数据库集群。
二、案例分析
1.规划节点
使用Mycat作为数据库中间件服务构建读写分离的数据库集群。
IP |
主机名 |
节点 |
192.168.200.70 |
mycat |
Mycat中间件服务节点 |
192.168.200.80 |
db1 |
MariaDB数据库集群主节点 |
192.168.200.90 |
db2 |
MariaDB数据库集群从节点 |
2.基础准备
用CentOS 7.2系统,flavor使用2vCPU/4G内存/50G硬盘,创建3台虚拟机进行实验。
其中2台虚拟机db1和db2部署MariaDB数据库服务,搭建主从数据库集群;一台作为主节点,负责写入数据库信息;另一台作为从节点,负责读取数据库信息。
使用一台虚拟机部署Mycat数据库中间件服务,将用户提交的读写操作识别分发给相应的数据库节点。这样将用户的访问操作、数据库的读与写操作分给3台主机,只有数据库集群的主节点接收增、删、改SQL语句,从节点接收查询语句,分担了主节点的查询压力。
Yum源使用提供的gpmall-repo文件夹作为本地源,Mycat组件使用提供的Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz压缩包安装。
三、案例实施
1.基础环境配置
(1)修改主机名
使用hostnamectl命令修改3台主机的主机名。
Mycat节点修改主机名命令:
[root@localhost ~]# hostnamectl set-hostname mycat
[root@localhost ~]# bash
db1节点修改主机名命令:
[root@localhost ~]# hostnamectl set-hostname db1
[root@localhost ~]# bash
db2节点修改主机名命令:
[root@localhost ~]# hostnamectl set-hostname db2
[root@localhost ~]# bash
(2)编辑hosts文件
3台集群虚拟机的/etc/hosts文