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,中间件层实现 应用层实现 应用层实 ...
随机推荐
- css新增选择器
- 使用JdbcTemplate报 Incorrect column count: expected 1, actual 5错误解决
Incorrect column count: expected 1, actual 5 在使用jdbc的querForObject queryForList的时候,出现Incorrect colum ...
- ASP.Net MVC开发基础学习笔记(2):HtmlHelper与扩展方法
一.一个功能强大的页面开发辅助类—HtmlHelper初步了解 1.1 有失必有得 在ASP.Net MVC中微软并没有提供类似服务器端控件那种开发方式,毕竟微软的MVC就是传统的请求处理响应的回归. ...
- poj2184 01背包变形,价值为可为负数
题目链接:http://poj.org/problem?id=2184 题意:每行给出si和fi,代表牛的两个属性,然后要求选出几头牛,满足S与F都不能为负数的条件下,使S与F的和最大. tips:动 ...
- no-jquery 05 Utilities
Utilities type // is this a function? typeof someValue === 'function'; // is this an object? someVal ...
- IconFont和FontAwesome的区别?
一.[Iconfont] Iconfont支持所有低版本浏览器: Iconfont的图标库更大: Iconfont可以用自己上传的svg,但是要花费大量时间和耐心去设计AI图标: Iconfont的使 ...
- js常用函数陆续总结
1.each() 方法规定为每个匹配元素规定运行的函数. $.each(data,function(index,item){ sb.append(item.answerNum); } $(" ...
- 学习资源asp.net
http://www.runoob.com ajax 同一表单,多部分提交.增加,修改,删除 服务器端控件: http://technet.microsoft.com/zh-cn/library/cc ...
- three.js正交投影照相机
照相机又分为正交投影照相机与透视投影照相机 举个简单的例子来说明正交投影与透视投影照相机的区别.使用透视投影照相机获得的结果是类似人眼在真实世界中看到的有"近大远小"的效果(如下图 ...
- Codeforces 660C Hard Process(尺取法)
题目大概说给一个由01组成的序列,要求最多把k个0改成1使得连续的1的个数最多,输出一种方案. 和CF 676C相似. #include<cstdio> #include<algor ...