Amoebakeepalivedmysql高可用性方案.docx

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Amoebakeepalivedmysql高可用性方案

Amoeba+keepalived+mysql高可用性方案注:未在生成环境实施过本方案主要针对amoeba和keepalived的配置与实施,有关mysql的部分,请自行参考其他文档!优点 1:读写分离,支持水平分区,对开发透明2:amoeba实现对从库组灵活的负载均衡和故障自动转移,keepalived实现amoeba的主备切换、故障转移缺点不支持主库故障转移,依然存在主库的单点故障AMOEBA[安装篇]1、什么是Amoba?Amoeba(变形虫)项目,该开源框架于2008年开始发布一款Amoeba for Mysql软件。这个软件致力于MySQL的分布式数据库前端代理层,它主要在应用层访问MySQL的 时候充当SQL路由功能,专注于分布式数据库代理层(Database Proxy)开发。座落与 Client、DB Server(s)之间,对客户端透明。具有负载均衡、高可用性、SQL过滤、读写分离、可路由相关的到目标数据库、可并发请求多台数据库合并结果。 通过Amoeba你能够完成多数据源的高可用、负载均衡、数据切片的功能,目前Amoeba已在很多企业的生产线上面使用。2、Linux下安装AmobaA.JAVA环境安装Amoeba框架是基于Java SE1.5开发的,建议使用Java SE 1.5版本。1.6的版本也可以。准备Java安装包jdk-1_5_0_22-linux-i586-rpm.bin,上传二进制包至/usr/java(没有,请新建)。cd /usr/java给予执行权限,chmodu+xjdk-1_5_0_22-linux-i586-rpm.binshjdk-1_5_0_22-linux-i586-rpm.bin或者./jdk-1_5_0_22-linux-i586-rpm.bin #执行接下来是LICENSE,空格跳过,最后按提示输入yes.设置java环境变量在/etc/profile尾部加入下面的内容export JAVA_HOME=/usr/java/jdk1.5.0_22export PATH=$JAVA_HOME/bin:$PATH?export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarsource /etc/profile 使环境变量生效java –version 验证javajava version 1.5.0_22Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_22-b03)Java HotSpot(TM) Client VM (build 1.5.0_22-b03, mixed mode, sharingB 安装Amoeba去/projects/amoeba/files/下载必威体育精装版版本的Amoaba2.0。mkdir /usr/local/amoeba 将压缩包上传至/usr/local/amoebatarzxvfamoeba-mysql-binary-2.2.0.tar.gz 将export PATH=$PATH:/usr/local/amoeba/bin 加入/etc/profile尾部source /etc/profile$amoeba #验证amoeba的安装amoebastart|stop后台运行amoeba amoeba start[配置篇] 各种配置文件介绍,配置的详细见官方文档。本文档的末尾附上了一份参考配置。[注意事项]如果启动或者连接amoeba出错,首先注意检查配置文件。数据库的用户名,密码等。其中一个数据库实例连不上,涉及到该实例的操作将不会成功!但不会影响到对其他实例的操作。实际使用过程中,数据库连接尽可能只连接amoea这个虚拟实例,主要是使用到水平分区的功能的时候。1 Amoeba暂不支持事务如果必须使用事务,而且事务内的处理操作都可以路由到同一台MySQL上的话,可以考虑在存储过程中使用事务进行处理。2 Amoeba不支持跨库join和排序跨库的join和排序非常消耗资源,会导致性能严重下降,Amoeba没有进行支持。我们在进行数据库设计的时候,也应该尽可能避免跨库join。3Insert语句必须指定表的列名Amoeba是根据SQL语句进行解析的,如果SQL语句中没有切分规则中的关键字,那么Amoeba就不会按照规则进行水平切分。比如,按照城市ID进行数据水平切分时,如下语句不会被正确切分:INSERT INTO tb_Shop VALUES (1,5,店铺的名称,店铺的地址,1,2011-07-30);而如下语句则可以正确切分:INSERT INTO tb_Shop(

文档评论(0)

haihang2017 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档