Mysql Amoeba读写分离

环境:192.168.160.133 hjj2017110109

192.168.160.134 slave-node

192.168.160.135 amoeba-node

首先hjj2017110109与slave节点做成主从复制

amoeba安装

Amoeba是用java开发的,所以需要java环境,这里已经安装好java了 我们在amoeba节点安装amoeba,先将amoeba安装包上传到服务器,然后解压

然后进入amoeba文件夹里

配置amoeba

配置文件位于amoeba/conf目录下,但是我们主要实现读写分离功能,只需要配置两个文件dbServers.xml和amoeba.xml 首先是dbServer.xml 然后配置amoeba.xml

授权amoeba

先在hjj2017110109节点上创建数据库hjjtest

然后在slave-node上查看是否复制成功 接着在hjj2017110109和slave-node上给amoeba授权

启动amoeba

这里报个错,看意思应该是stack size太小,所以我们修改jvm.properties文件种的JVM_OPTIONS参数 修改如上图,再次启动,成功

amoeba读写分离测试

先登录amoeba数据库

登录hjj2017110109和slave数据库查看数据,发现现在都是可查的。

然后我们关掉hjj2017110109数据库,登录amoeba插入数据

发现插入报错,但是查询正常

接着我们开启hjj2017110109,关闭slave-node

再次尝试插入数据

发现,这次读取报错,插入成功

这说明,hjj22017110109负责写,而slave-node负责读,实现读写分离