zoukankan      html  css  js  c++  java
  • amoeba学习

    一.amoeba的安装

    1.安装好java

    2.将amoeba的包解压到一个目录就可以了,我是解压到/usr/local/amoeba-mysql-binary-2.1.0/ 目录

    3.进入bin目录,运行:./amoeba 

    如果看到:amoeba start|stop 就代表成功了

    二.amoeba的配制 

    1.单机器代理实现

    a.修改conf/dbServers.xml ,修改schema及password为真实的情况

    b.修改conf/amoeba.xml,修改里的port及password为代理的情况

    c.nohup ./amoeba start & 启动

    d. mysql -uroot -p代理的密码 -h127.0.0.1 -P8066 如果登录成功则单机器代理成功了

     2.主从代理实现

    三.使用mysql jdbc提供的负载均衡配置再解决amoeba服务器的单点问题

    1. jdbc连接字附串中的loadbalance说明

     load balance方式有两种负载均衡算法,一种是随机式的轮询算法,另一种是最短响应时间算法

    例句: <driver-url>jdbc:mysql:loadbalance://127.0.0.1:8066,10.20.238.164:8066/test</driver-url>

     如果两台amoeba都正常时,会将访问的压力分载到 127.0.0.1,10.20.238.164两个机器上,还可以加上roundRobinLoadBalance=true参数,使用roundRobin轮询算法,若是其中一台机器down掉以后,将会自动将不能访问的数据库服务器 踢除,如果还原后将继续进行压力分载。

    2. jdbc连接字附串中的replication说明

    当后端MYSQL服务器群是master-slave单向一主N从的同步复制机制时,再使用loadbalance方式就会有问题了,因为如果有insert、update等写操作改变了从机的数据就麻烦了,从机不会将变化复制到主机,因此这种情况下需要实现“主读写、从只读”的模式,为了达到这个目的可以使用replication方式, 

    如下所示:<driver-url>jdbc:mysql:replication://master,slave1,slave2,slave3/test</driver-url>

    replication方式可以很安全的实现写操作只发送到主机执行,而从机只会接收到读操作。

  • 相关阅读:
    如何添加mysql到环境变量
    SQLyog客户端无法连接MySQL服务器
    linux下插入的mysql数据乱码问题及第三方工具显示乱码问题
    mysql-5.7.10产生的日志时间与系统时间不一致
    linux—文件目录简单介绍
    python编程中的if __name__ == 'main' 的作用和原理
    Windows下Python版本的切换
    python—第三库的安装方法
    阿里云ubuntu16.04安装beef
    xss利用-beef攻击-演示
  • 原文地址:https://www.cnblogs.com/cerxp/p/2352597.html
Copyright © 2011-2022 走看看