高兴随手记 
小三IT自学 135956557 群里我会定时交给想学IT技术的小伙伴一些运维技术~
喜欢的可以进来溜达溜达~喜欢的话一起学习一起进步
主从复制做好以后,读写分离就不远了
读写分离软件很多,这次用的阿里巴巴开发的amoeba[阿尼爸].PS:用个软件感觉被占了便宜一样
amoeba是java开发的,所以第一步先创建java环境
jdk安装包移动到/usr/local/下
chmod +x jdk***  赋予执行权限
安装完成后
mv jdk1****   jdk.自己取名字
修改文件名,这在下面设置脚本,设置环境中需要用到准确位置
vim /etc/profile   修改配置文件

/etc/profile 需要添加的

export JAVA_HOME=/usr/local/jdk1.6

export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

export PATH=$JAVA_HOME/lib:$JAVA_HOME/jre/bin:$PATH:$HOME/bin

export AMOEBA_HOME=/usr/local/amoeba/

export PATH=$PATH:$AMOEBA_HOME/bin
----------------------------------------------------------amoeba的java环境
mkdir /usr/local/amoeba
tar zxf amoeba***** -C  /usr/local/amoeba  指定压缩到这.绿色软件压缩即可用
chmod -R 755 /usr/local/amoeba/      赋予755权限
/usr/local/amoeba/bin/amoeba   如果出了start stop  就是成功
为了让amoeba可以连接mysql服务器,每台服务器都需要创建一个帐号,给予权限
grant all on *.* to 'tangsan'@'192.168.1.%' identified by '123456'      赋予权限在mysql中的命令
现在开始修改amoeba的配置文件
vim /usr/local/amoeba/conf/amoeba.xml
开头有一个 8066端口,这事amoeba连接用的
将其改成3306     这是mysql的端口,为了后期连接方便直接修改了就行否则在连接时需要-P8066指定端口

wKioL1jNPd6gBEVuAAAS3AV7vGI095.png-wh_50


后面还有两个用户名跟密码,注意这个用户名密码是amoeba的!是用来连接amoeba的! 

wKioL1jNPhPw6pxbAAARg493ya4301.png


还有一个地方是区分读写服务器的,名称要写对,需要跟另外一个配置文件匹配
defaultpool 默认     master   主要的么     slave   奴隶,......很形象啊
writepool 写
readpool 读

wKiom1jNPizzE1R9AAA_3IJ9oO4827.png-wh_50


---------------------------------------------------------------------------------------amoeba.xml配置完成
vim /usr/local/amoeba/conf/dbServers.xml
 首先修改用于连接mysql的账户密码

                        tangsan

                        123456
这两行需要修改,其中密码是被注释的,自行删或者添加
然后开始设置读写区分服务

linux-mysql主从复制好伴侣[读写分离]_第1张图片

linux-mysql主从复制好伴侣[读写分离]_第2张图片



注意箭头方向,那是跟上一个文档配合的,还有当前mysql的IP,截图不是很好,slaves是同一个,但是下面的slave1 是读服务器池,自行定义有多少写多少!
 /usr/local/amoeba/bin/amoeba start&     启动服务后台启动
netstat -anpt | grep java    查看服务
如果服务可以查看到,基本就成功了,在另外一台linux mysql上连接amoeba
mysql -u amoeba -p 123456 -H 192.168.1.20 
用户名密码,指定IP
连接成功,yes