amoeba实现mysql读写分离

安装jdk

jdk7.tar.bz2

tar -jxvf jdk7.tar.bz2

./configure

make && make install

安装mysql

mkdir /usr/local/amoeba/

下载amoeba-mysql-1.3.1-BETA.zip

unzip amoeba-mysql-1.3.1-BETA.zip

配置文件如下



       

                8066 //amoeba端口


                10.130.6.29 //本机ip

                20

                30

                30

                128

                true

                root

                123456

                60

       


       

               

                        com.meidusa.amoeba.net.AuthingableConnectionManager


                       

               

       


       

                 //mysql主机

                       

                                defaultManager

                                3306

                               10.130.6.114//主数据库

                                test //库名

                                pan //代理用户

                                123456 //代理用户密码

                       

                       

                                200

                                200

                                10

                                600000

                                600000

                                true

                                true

                       

               


                //另一台数据库

                       

                                defaultManager

                                3306

                                10.130.6.115 //mysql

                                test

                                pan

                                123456

                       

                       

                                200

                                200

                                10

                                600000

                                600000

                                true

                                true

                       

               


                //mysql的master

                       

                                1


                                server1 //主数据库

                       

               


                //mysql的slave

                       

                                1


                                server1,server2,server2 //从数据库读俩次,主数据库读一次

                       

               

       


       

                ${amoeba.home}/conf/rule.xml

                ${amoeba.home}/conf/functionMap.xml

               

                1500

                master //默认主库

                master    //主库复制写请求

                slave    //读请求

                true

       


更改amoeba.xml配置文件 乱码和注释去掉 (有乱码起不来服务) (部分功能注释要去掉)

amoeba 启动 无报错信息后 后台启动

nohup /usr/local/amoeba/bin/amoeba &

grant all on test.* to pan@'192.168.1.%' identified by '123456';

flush privileges;

在aomeba上登陆

mysql -uroot -ppassword -h192.168.1.159 -P8066   amoeba-server的ip

先关掉主从配置 stop slave

向表插入数据 数据只可以在主上看到

执行select 第一次执行看到主的数据 ,第二次三次为从上的未变动数据 第四次循环为主的数据

此效果为配置成功


如有报错 (相关依赖包根据报错安装)

# vim amoeba

修改58行的Xss参数:

DEFAULT_OPTS="-server -Xms1024m -Xmx1024m -Xss128k"

修改为:

DEFAULT_OPTS="-server -Xms1024m -Xmx1024m -Xss256k"