【mysql】centos7 amoeba实现mysql读写分离

前言

        本软件在安装时Linux机器已有Java1.8和mysql5.6,如没有自行下载安装。在已经搭建好主从复制的基础上,才可以搭建读写分离。主从复制请参考mysql主从复制

准备

        系统:centos7
        jdk:版本1.5以上,测试用的是jdk1.8
        mysql:版本5.6.35(测试用)
        amoeba版本:amoeba-mysql-3.0.5-RC
        amoeba安装地址:服务器207
        主库地址:服务器207
        从库地址:服务器218

Linux下载amoeba

wget https://sourceforge.net/projects/amoeba/files/Amoeba%20for%20mysql/3.x/amoeba-mysql-3.0.5-RC-distribution.zip

安装

将压缩包解压到/usr/local/amoeba文件夹中:
#unzip amoeba-mysql-3.0.5-RC-distribution.zip -d /usr/local/amoeba(如没有unzip命令请自行安装:yum install         -y unzip zip)

配置环境变量

        #vi /etc/profile
        在最下面加入两行
        export AMOEBA_HOME=/usr/local/amoeba/amoeba-mysql-3.0.5-RC
        export PATH=$PATH:$AMOEBA_HOME/bin

        

        #source /etc/profile(使环境变量及时生效)

给amoeba授权mysql远程账(不推荐使用root)

mysql>GRANT ALL PRIVILEGES ON *.* TO 'amoeba'@'192.168.22.207' IDENTIFIED 'amoeba' WITH GRANT OPTION;(创建一个用户名为amoeba,密码为amoeba,ip为192.168.22.207可登录该账户)。

配置文件

dbServers.xml(/usr/local/amoeba/amoeba-mysql-3.0.5-RC/conf)




amoeba.xml(/usr/local/amoeba/amoeba-mysql-3.0.5-RC/conf)





jvm.properties(/usr/local/amoeba/amoeba-mysql-3.0.5-RC)


JVM_OPTIONS="-server -Xms256m -Xmx1024m -Xss196k -XX:PermSize=16m -XX:MaxPermSize=96m"
改为
JVM_OPTIONS="-server -Xms1024m -Xmx1024m -Xss256k"
解决jdk7以上要求的启动xss参数


启动/关闭amoeba

最好先前台启动,检查没有错误之后再后台启动。
关闭
# /usr/local/amoeba/amoeba-mysql-3.0.5-RC/bin/shutdown
启动
# /usr/local/amoeba/amoeba-mysql-3.0.5-RC/bin/launcher
后台启动并把日志保存到/var/log/amoeba.log
# /usr/local/amoeba/amoeba-mysql-3.0.5-RC/bin/launcher > /var/log/amoeba.log 2>&1 &


登录测试

测试在218服务器测试(只要安装有mysql均可)
# mysql -uroot -p123456 -h192.168.22.207 -P8066(用户名root,密码123456,地址207,端口号8066<代表端口号的P大写>)
mysql>登录成功。

总结

        amoeba是盛大架构师陈思儒独立完成,除此之外,还有很多中间件可以实现mysql的读写分离,如mycat是阿里的一款支持读写分离的中间件等等,类似的还有很多,但是原理大致都相同。

相关文章
相关标签/搜索