Server1(master) Server2(slave) Server3(Middleware中间件)

MySQL读写分离实验_第1张图片

首先在server1和server2上面搭建主从数据库服务器


server1(master)

安装软件:

yum install -y mysql mysql-server

修改配置文件/etc/my.cnf

wKiom1lIuUXxJ0xVAABH-82ApF8269.png

启动服务登录授权:

MySQL读写分离实验_第2张图片


server2(slave)

安装软件:

yum install -y mysql mysql-server

修改配置文件/etc/my.cnf

wKiom1lIuUfiqwe2AABZTUsfOmc810.png

MySQL读写分离实验_第3张图片

wKiom1lIuUiCnANoAABO0QP53kE573.png

MySQL读写分离实验_第4张图片

wKioL1lIuUqB80pRAAB5QtD_F5k150.png


server3(middleware)

安装gcc环境

yum install -y gcc*

MySQL读写分离实验_第5张图片

wKioL1lIuUyDjl92AABTWMPMxZ0027.png

wKiom1lIuU3QP4HSAABobFsm-uo827.png

安装jdk(配置amoeba所需要的Java环境)

wKioL1lIuU6za27rAABLC-X1lto364.png

MySQL读写分离实验_第6张图片

声明用Java写出来的程序如何使用(/etc/profile)

MySQL读写分离实验_第7张图片

source /etc/profile(声明一下环境)

JAVA_HOME=/amoeba/jdk

export JAVA_HOME

PATH=$JAVA_HOME/bin:$PATH

export PATH

CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$CLASSPATH

export CLASSPTH

wKioL1lIuVHiVJ_MAACY7cQPtsI863.png


安装amoeba

解压:

MySQL读写分离实验_第8张图片

配置amoeba

wKioL1lIuVSz-KSzAABrG18YDD0703.png

MySQL读写分离实验_第9张图片

MySQL读写分离实验_第10张图片

MySQL读写分离实验_第11张图片

MySQL读写分离实验_第12张图片

复制一份给server2用的(里面的IP地址是slave服务器的IP)

MySQL读写分离实验_第13张图片

MySQL读写分离实验_第14张图片

启动amoeba

修改启动脚本

赋予执行权限:wKiom1lIuWCSqj_2AABb0_4t18E958.png

vim /usr/local/amoeba/bin/amoeba

wKiom1lIuWHyzbDrAABfJDi9luw151.png

MySQL读写分离实验_第15张图片

需要安装mysql工具包就行yum -y install mysql(登录地址为中间件的IP)

MySQL读写分离实验_第16张图片

测试:

在slave服务器上面停止stop slave服务

在server1

MySQL读写分离实验_第17张图片

在server2

MySQL读写分离实验_第18张图片

在server3(中间件上面查询)

MySQL读写分离实验_第19张图片

结果显示了我查询的信息的时候,是从服务器给我提供服务

此时我在数据库中添加信息:

MySQL读写分离实验_第20张图片

然后去server1、server2上面分别查看,看数据被写入到哪个服务器上面

server1

MySQL读写分离实验_第21张图片

server2

MySQL读写分离实验_第22张图片

此次实验,实现了数据分离