Amoeba-mysql主从+读写分离实战+测试+排错-阿里云开发者社区

开发者社区> 科技小能手> 正文

Amoeba-mysql主从+读写分离实战+测试+排错

简介:
+关注继续查看

Amoeba-mysql读写分离实战

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

先说一下本人环境:wKioL1Ym5zbyIxExAADay0VnuMg256.jpg



Mysql 5.6

Centos 6.4

Mysql一主两从已OK。

Amoeba 2.2.x

Amoeba下载地址:http://sourceforge.net/projects/amoeba/files/Amoeba%20for%20mysql/

 

由于Amoeba需要用到jave se 所以我们需要安装jdk环境。

最新的1.8 可用。

安装jdk:

rpm -ivh jdk-8u60-linux-x64.rpm

wKiom1Ym50jR_QM_AAEV4426fbg217.jpg


source /etc/profile

验证jdk:

 wKiom1Ym52qSsKYOAAEhME4H_Cc727.jpg

Jdk就完事了,现在开始amoeba的安装。

 

先创建目录文件

mkdir /usr/local/amoeba

tar zxvf amoeba-mysql-binary-2.2.0.tar.gz -C /usr/local/amoeba

解压指定目录

wKioL1Ym57rCmWhXAAFbVfwqpww932.jpg


然后我们进入conf文件,这里的xml为储存amoeba设置连接mysql的数据

在amoeba目录下,输入

./bin/amoeba

wKiom1Ym56mhWXu9AABAvOaodL4427.jpg

如果出现说明amoeba安装OK,

 

接下来设置amoeba的参数,设置参数的文件在conf目录下的amoeba.xml和dbServers.xml两个文件。

先看 dbServiers.xml

wKioL1Ym5-uyJ-yDAARt_eq2r5A452.jpg


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

wKiom1Ym5-HyttdUAAPoUDHtH64447.jpg


这个dbServers.xml就设置到这里

 

 

接下来看amoeba.xml


 wKiom1Ym5_2SAOlWAAMQ1eTXXC4730.jpgwKioL1Ym6D_h4ZprAAN8fzp7MGk709.jpg

 


配置完成后保存。

然后启用amoeba

/usr/local/amoeba/bin/amoeba &       &表示在后台运行

如果出现

wKiom1Y5tEDQktl4AAFO8PV24ao190.jpg打开bin/amoeba

DEFAULT_OPTS="-server -Xms256m -Xmx256m -Xss128k"
改成

    DEFAULT_OPTS="-server -Xms256m -Xmx256m -Xss256k"




用ps –ef |grep amoeba 看一下是否启动

查看netstat -tunlp | grep 8066 看一下端口是否开启

##amoeba这台机器是不用开启mysql服务

 

 

 

     在其他客户端上验证是否可以登录amoeba上;

wKioL1Ym6F7hkcY1AABGN6mSdvA342.jpg



这样就表示登录成功。

 wKiom1Ym6E-A4lJoAAEF1P-PbwU124.jpg



到此读写分离就已经搭建完成了,如果要结合到前段web的应用上就把web端的数据库连接改到amoeba这台服务器的8066端口上,用户名密码就是amoeba.xml里配置的用户名和密(并非real-mysql-server)的用户。


如果想实现分库分用户比如mysql里yyy用户管理yyy库,zzz用户管理zzz库。可以新解压个amoeba程序修改端口,修改库,修改用户,另起进程进行读写分离。



此处我前端web是discuz论坛,就要修改/usr/local/nginx/html/config/config_global.php

wKioL1Y5v6SCVrOXAAKfBq_TL2g715.jpg


\本文转自 转身撞墙角 51CTO博客,原文链接:http://blog.51cto.com/chentianwang/1709659


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
10061 0
读写分离提高 SQL Server 并发性
原文:读写分离提高 SQL Server 并发性 转自:http://www.canway.net/Lists/CanwayOriginalArticels/DispForm.aspx?ID=476 在一些大型的网站或者应用中,单台的SQL Server 服务器可能难以支撑非常大的访问压力。
763 0
mysql读写性能测试
用mysqlslap进行mysql压力测试 mysqlslap官方文档   mysqlslap菜鸟译文 概述和测试环境 压测的目的是为了尽量模拟真实情况。测试的表都是由10个int型字段和10个字符串型字段组成。每个测试项目都测试了myisam和innodb两个引擎。测试的方法都是用两个线程并发,一共跑10000个请求。 压测的机器用的是自己的笔记本。CPU是Intel(R
1922 0
使用Spring AOP实现MySQL数据库读写分离案例分析
使用Spring AOP实现MySQL数据库读写分离案例分析 前言 分布式环境下数据库的读写分离策略是解决数据库读写性能瓶颈的一个关键解决方案,更是最大限度了提高了应用中读取 (Read)数据的速度和并发量。
1781 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
10882 0
mysql读写分离(PHP类)
mysql读写分离(PHP类) 博客分类:   php mysql     自己实现了php的读写分离,并且不用修改程序 优点:实现了读写分离,不依赖服务器硬件配置,并且都是可以配置read服务器,无限扩展 缺点:错误转移不购明确,现只有3次尝试机会,失败了就会选择其他的服务器.
1236 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
13874 0
Mysql主从配置,实现读写分离
原文:Mysql主从配置,实现读写分离 大型网站为了软解大量的并发访问,除了在网站实现分布式负载均衡,远远不够。到了数据业务层、数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器扛,如此多的数据库连接操作,数据库必然会崩溃,数据丢失的话,后果更是 不堪设想。
907 0
冰河,能讲讲Mycat如何实现MySQL的读写分离吗?
随着系统业务的不断发展,MySQL数据库中的数据量也在不断攀升,当数据量达到一定量级时,MySQL的主从复制、读写分离、分库分表就成为了一种必然的架构趋势。这不,就有小伙伴问我能不能讲讲Mycat如何实现MySQL的读写分离。于是就安排上了这篇文章。目前,我也在业余时间开发和维护Mycat源码,小伙伴们在学习和使用Mycat时,遇到问题也可以加我微信【sun_shine_lyz】共同交流哦!
15 0
23706
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载