首页 > 数据库技术 > 详细

MySQL的主从复制与读写分离技术实例(二)读写分离

时间:2016-02-29 23:27:10      阅读:574      评论:0      收藏:0      [点我收藏+]

系统版本:CentOS 6.5   MySQL版本:mysql-5.5.38   Amoeba版本:amoeba-mysql-binary-2.2.0  

JDK版本:jdk-6u14-linux-x64.bin


案例拓扑图:

技术分享

案例环境:

技术分享


搭建MySQL的读写分离

一、搭建MySQL读写分离之前需要先完成MySQL的主从复制,主从复制的相关操作可以参考:《MySQL的主从复制与读写分离技术实例(一)主从复制


二、安装Amoeba软件

Amoeba这个软件致力于MySQL的分布式数据库前端代理层,主要为应用层访问MySQL时充当SQL路由功能,并具有负载均衡、高可用性、SQL过滤、读写分离等功能。Amoeba是基于jdk1.5开发的,需要应用到Java环境中,并且建议使用jdk1.5或jdk1.6的版本搭建,我这里软件已经准备好了

技术分享


1.在Amoeba服务器上安装Java环境

技术分享


2.将jdk安装目录移动到/usr/local/jdk1.6,并在全局变量中添加如下配置项,指定jdk安装目录、类路径、Amoeba安装目录

技术分享

技术分享


3.刷新环境变量,并查看刚刚安装的java版本

技术分享

Jave环境配置成功


4.安装Amoeba软件,注意全局变量中已经指定好Amoeba安装目录,直接解压到此目录即可

技术分享


三、配置Amoeba服务器,实现MySQL的读写分离和两个Slave服务器的负载均衡

1.在三台MySQL服务器上分别开放权限给Amoeba访问,这里用Master说明

技术分享

技术分享


2.修改Amoeba服务器的代理配置文件amoeba.xml,修改以下红方框中的内容:

技术分享

技术分享


技术分享


3.修改Amoeba服务器对后端MySQL做配置的dbServers.xml文件,同样修改以下红方框的内容:

技术分享

技术分享


技术分享


4.修改好以后,启动Amoeba执行后台运行,默认端口号tcp的“8066”,注意防火墙

技术分享

技术分享


四、测试

1.用客户机通过amoeba代理服务器访问MySQL

技术分享


2.在Master上创建一个表,然后同步到各从服务器上

技术分享

同步完成后关闭两台从服务器的同步功能

技术分享


3.在主服务器Master上向表中添加内容

技术分享


在从服务器Slave1和Slave2分别插入下面内容

Slave1:

技术分享

Slave2:

技术分享


4.测试从服务器的负载均衡,用客户机进行读操作

技术分享


5.测试读写分离,在客户机上进行写操作,然后用客户端是查询不到刚刚写入的内容的

技术分享


只有在Master主服务器上才能查询到,这也说明写操作是在Master上进行的,也就实现了读写分离

技术分享


MySQL的主从复制与读写分离技术实例(二)读写分离

原文:http://928004321.blog.51cto.com/10707688/1746134

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!