准备

下载如下linux安装包

jdk-6u31-linux-x64-rpm.bin

amoeba-mysql-binary-2.2.0.tar.gz

# crontab -e  //同步时间

*/ * * * * /usr/sbin/ntpdate 172.16.0.1 &>/dev/null

# service iptables stop  //这几台服务器都要关闭防火墙

配置主从复制架构: 多主机 (ip和名称定义)

192.168.1.25  master

192.168.1.30  slave1

192.168.1.35  slave2

192.168.1.147  amoeba

正式开始...

1.java

安装java

# cp jdk-6u31-linux-x64-rpm.bin /usr/local/

# cd /usr/local

# chmod +x jdk-6u31-linux-x64-rpm.bin

# ./jdk-6u31-linux-x64-rpm.bin

加入环境变量

# vi /etc/profile.d/java.sh

export JAVA_HOME=/usr/java/latest

export PATH=$JAVA_HOME/bin:$PATH

验证jdk

# source /etc/profile //必须加上这句使java配置生效

# java -version

2.安装amoeba

# mkdir -p /usr/local/amoeba

# tar xf amoeba-mysql-binary-2.2.0.tar.gz -C /usr/local/amoeba  //使用二进制安装

# cd /usr/local/amoeba

# bin/amoeba start  //前台运行

# nohup /usr/local/amoeba/bin/amoeba start &  //后台运行

3.配置amoeba

# cd /usr/local/amoeba/conf

# vi ameoba.xml  //前端配置文件, amoeba接口配置信息

<property name=</property>  <!-- amoeba被访问的端口 -->

<property name="user">root</property>  <!-- 用户名 -->

<property name="password"></property>  <!-- 密码 -->

<property name="defaultPool">wp</property>  <!-- 默认服务器池 -->

<property name="writePool">wp</property>  <!-- 写操作的虚拟服务器池 -->

<property name="readPool">rp</property>  <!-- 读操作的虚拟服务器池 -->

# vi dbServers.xml  //后端配置文件, amoeba访问mysql的配置信息

<property name=</property>  <!-- mysql被访问的端口 -->

<property name="schema">test</property>

<property name="user">root</property>  <!-- mysql用户名 -->

<property name="password"></property>  <!-- mysql密码 -->

<!-- 主服务器 -->

<dbServer name="master"  parent="abstractServer">

      <factoryConfig>

            <property name="ipAddress">192.168.1.25</property>

      </factoryConfig>

</dbServer>

<!-- 从服务器1 -->

<dbServer name="slave1"  parent="abstractServer">

      <factoryConfig>

            <property name="ipAddress">192.168.1.30</property>

      </factoryConfig>

</dbServer>

<!-- 从服务器2 -->

<dbServer name="slave2"  parent="abstractServer">

      <factoryConfig>

            <property name="ipAddress">192.168.1.35</property>

      </factoryConfig>

</dbServer>

<!-- 写池: master -->

<dbServer name="wp" virtual="true">

      <poolConfig class="com.meidusa.amoeba.server.MultipleServerPool">

            <property name=</property>

            <property name="poolNames">master</property>

      </poolConfig>

</dbServer>

<!-- 读池: slave1,slave2 -->

<dbServer name="rp" virtual="true">

      <poolConfig class="com.meidusa.amoeba.server.MultipleServerPool">

            <property name=</property>  <!-- 1表示轮询 -->

            <property name="poolNames">slave1,slave2</property>

      </poolConfig>

</dbServer>

4.测试:

从amoeba接口登录, 创建数据库db2后,再从主库的接口中去查询数据库是否已创建,如是则说明写入确实是落在了主库节点上

若要验证ameoba对于读操作的调度,则需要暂时停止从库的复制操作,然后在主库上更新数据,这样从ameoba接口登录来读取数据将出现不一致的情况

;

最新文章

  1. Angular 之坑??
  2. jQuery 一句代码返回顶部
  3. js_保留关键字
  4. 使用 AdaBoost 元算法提高分类器性能
  5. 一些XMLHttpRequest的例子代码
  6. CSS层次选择器温故-2
  7. ArrayList和LinkedList的几种循环遍历方式及性能对比分析(转载)
  8. Installing Ruby 1.9.3 on Ubuntu 12.04 Precise Pengolin (without RVM)
  9. [Objective-c 基础 - 3.3] @property属性详解
  10. Nginx 配置指令的执行顺序(六)
  11. 第十一条:谨慎的覆盖clone()方法
  12. luogu P1600 天天爱跑步
  13. 2015年蓝桥杯省赛A组c++第5题(回溯算法填空)
  14. Kattis之旅——Perfect Pth Powers
  15. 分享一下个人学PS的过程
  16. 常见的网络攻击(XSS,SQL注入,CSRF)
  17. Linux下使用thrfit
  18. Android中播放本地SD卡中歌曲须要的加入的权限
  19. 转!!mybatis xml 传值 if test判断
  20. 数据库 MySQL part4

热门文章

  1. [Python Debug] SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame.
  2. Unity -- 使用easyAR的基础教程
  3. ArcGIS教程:公布地理处理服务
  4. 网上常用免费webservice_查询(网络复制)
  5. 推荐系统中的注意力机制——阿里深度兴趣网络(DIN)
  6. masm学习
  7. Linux系统救援模式应用:单用户模式找回密码
  8. 【唯星宠物】——BootStrap/Mysql/PHP/Ajax爬坑之正则验证登录注册子页
  9. 2016.10.17 yaml文件里的labels和Pod、RC、Service的对应关系
  10. vue v-for与v-if组合使用