Amoeba-mysql读写分离实战
Amoeba-mysql读写分离实战
Amoeba用途有很多,这里看标题我们就先说读写分离,因为我也只会这个。Amoeba定义为国内的,开源的。目前(2015年10月20日)我们用amoeba2.2版本来做。
先说一下本人环境:

Keepalived那个先不说。
Mysql 5.6
Centos 6.4
Mysql一主两从已OK。
Amoeba 2.2.x
主从我就不讲了,网上N多资料。
Amoeba下载地址:http://sourceforge.net/projects/amoeba/files/Amoeba%20for%20mysql/
由于Amoeba需要用到jave se 所以我们需要安装jdk环境。
最新的1.8 可用。
安装jdk:
rpm -ivh jdk-8u60-linux-x64.rpm

source /etc/profile
验证jdk:

Jdk就完事了,现在开始amoeba的安装。
先创建目录文件
Mkdir /usr/local/amoeba
在将下载文件复制到刚刚创建的目录,然后解压。

然后我们进入conf文件,这里的xml为储存amoeba设置连接mysql的数据
在amoeba目录下,输入
./bin/amoeba
如果出现

说明amoeba安装OK,
接下来设置amoeba的参数,设置参数的文件在conf目录下的amoeba.xml和dbServers.xml两个文件。
先看 dbServiers.xml

grant all on *.* to root@'192.168.0.191' identified by "123456"; 这条命令是需要在客户端运行的,让amoeba调度器能够连接我们的数据库并做操作

这个dbServers.xml 就设置到这里
接下来看amoeba.xml


配置完成后保存。
然后启用amoeba
/usr/local/amoeba/bin/amoeba & &表示在后台运行
用ps –ef |grep amoeba 看一下是否启动
在windows 客户端 验证是否可以登录amoeba上;

这样就表示登录成功。

接下来就是验证读写分离了
在停掉主从之前先在主上创建一个表名为create database jdtable;
然后进入库 use jdtable;
创建一个表 create table dashen (id int(10) ,name varchar(10),address varchar(20));
然后在看从上是否同步。
同步之后关掉主从 stop slave;
开始验证。
我们在第一个从上 也就是 187插入一条语句:
insert into dashen values('1','syw','slave-187');
在另外一个从上 也插入一条语句:
insert into dashen values('2','syw','slave-188'); 虽然IP是190
然后我们用windows登陆amoeba这个调度器
使用select * from jdtable.dashen;来查询,看一下amoeba会调用之前amoeba.xml这里面的Slavepool这个模块的循环,也可以说是负载均衡。Slave1 查询一次,slave2查询两次。

在amoeba上插入一条数据时候,amoeba也会根据amoeba.xml 里面配置写的模块来写入相应的数据库中。
测试完毕!
Amoeba-mysql读写分离实战的更多相关文章
- Amoeba mysql读写分离搭建及介绍
Amoeba mysql读写分离搭建及介绍 推荐: http://blog.chinaunix.net/uid-20639775-id-154600.html
- 构建高性能web之路------mysql读写分离实战(转)
一个完整的mysql读写分离环境包括以下几个部分: 应用程序client database proxy database集群 在本次实战中,应用程序client基于c3p0连接后端的database ...
- mysql读写分离实战
一个完整的MySQL读写分离环境包括以下几个部分: 应用程序client database proxy database集群 在本次实战中,应用程序client基于c3p0连接后端的database ...
- SpringBoot + MyBatis + MySQL 读写分离实战
1. 引言 读写分离要做的事情就是对于一条SQL该选择哪个数据库去执行,至于谁来做选择数据库这件事儿,无非两个,要么中间件帮我们做,要么程序自己做.因此,一般来讲,读写分离有两种实现方式.第一种是依靠 ...
- 构建高性能web之路------mysql读写分离实战
http://blog.csdn.net/cutesource/article/details/5710645 http://www.jb51.net/article/38953.htm http:/ ...
- Mysql读写分离-Amoeba Proxy
参考:http://www.linuxidc.com/Linux/2015-10/124115.htm 一个完整的MySQL读写分离环境包括以下几个部分: 应用程序client database pr ...
- amoeba实现MySQL读写分离
amoeba实现MySQL读写分离 准备环境:主机A和主机B作主从配置,IP地址为192.168.131.129和192.168.131.130,主机C作为中间件,也就是作为代理服务器,IP地址为19 ...
- amoeba安装与实现amoeba for mysql读写分离
运行环境 l CentOS6.3 l Jdk1.6.0_30 l amoeba-mysql-binary-2.2.0 l amoeba:192.168.88.17 l master1:192 ...
- Mysql读写分离方案-Amoeba环境部署记录
Mysql的读写分离可以使用MySQL Proxy,也可以使用Amoeba.Amoeba(变形虫)项目是一个类似MySQL Proxy的分布式数据库中间代理层软件,是由陈思儒开发的一个开源的java项 ...
- 使用Amoeba实现mysql读写分离机制
Amoeba的实用指南 http://docs.hexnova.com/amoeba/ 如何实现mysql读写分离 : 通常来说有两种方式: 1,应用程序层实现 2,中间件层实现 应用层实现 应用层实 ...
随机推荐
- Notification
一:普通Notification 1.内容标题setContentTitle(...) 2.大图标setLargeIcon(Bitmap) 3.内容setContentText(...) 4.内容附加 ...
- Spring事务解析2-标签解析
根据自定义标签的使用规则,可以知道会执行AnnotationDrivenBeanDefinitionParser的parse @Override public BeanDefinition parse ...
- 《锋利的jQruery》读书笔记
由于是一边看书一边练习,所以干把笔记写在html文档中.想看的同学可以复制到一个html文档中,结合浏览器查看.不得不说<锋利的jQuery>是本好书,建议好好看看.尊重知识产权,请购买正 ...
- 2016.5.27 php测试中敏感度高,怎么调整
在测试PHP代码的过程中,会遇到这样的问题:PHP提示Notice: Undefined variable,遇到这样的问题很纠结,但是很容易解决. 今天晚上,我就遇到了这样的问题,到网上搜索了很多解决 ...
- 使用Maven构建Android项目
http://www.ikoding.com/build-android-project-with-maven/ 之前一直在做WEB前端项目,前段时间接手第一个Android项目,拿到代码之后,先试着 ...
- 疯狂java学习笔记之面向对象(六) - 构造器重载、方法重载和方法重写
一.方法重载(Overload): Java允许同一个类中定义多个同名方法,只要形参不一样就可以,如果同一个类中包含了两个或两个以上方法名相同的方法,但形参列表不同,则被成为方法重载(两同一异). 同 ...
- ccc 设置图片位置
cc.Class({ extends: cc.Component, properties: { player:{ default:null, type:cc.Sprite } }, // use th ...
- BZOJ 1053 & 反素数
题意: 反素数,膜一篇GOD's Blog...http://blog.csdn.net/ACdreamers/article/details/25049767 此文一出,无与争锋... CODE: ...
- 《DON'T MAKE ME THINK》/《点石成金访客至上的网页设计秘笈》 读书笔记
1.web页面要尽可能简单,让用户不用思考就能知道页面的功能,如果要进行一些崭新的.开拓性的或者非常复杂的页面设计时, 此时要利用页面元素的外观.精心选择的名称.页面布局以及少量仔细斟酌过的文字,使页 ...
- 开篇&TexturePacker打出图集给UGUI使用
开篇: 前段时间,网上流出了一套手游源码,本想着把服务器端搭一下,给自己认识小伙伴们调试着把这套源码学习一下.于是就买一个阿里云服务器,可是花了几天时间,就是run不起来了啊.还好网上已经有人搭出来了 ...