首先配置mysql的主从复制,并对管理员有远程登陆权限
mysql的主从复制
在server7上下载并安装mysql-proxy
tar zxf mysql-proxy-0.8.5-linux-el6-x86-64bit.tar.gz
mv mysql-proxy-0.8.5-linux-el6-x86-64bit /usr/local/mysql-proxy
cd /usr/local/mysql-proxy/
vim ~/.bash_profile
PATH=$PATH:$HOME/bin:/usr/local/mysql-proxy/bin
source ~/.bash_profile
mkdir conf
vim mysql-proxy.conf
[mysql-proxy]
user=root
proxy-address=0.0.0.0:3306 # 监听所有主机
proxy-backend-addresses=172.25.11.6:3306 # master的ip
proxy-read-only-backend-addresses=172.25.11.5:3306 # slave的ip
proxy-lua-script=/usr/local/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua # lua脚本路径
log-file=/usr/local/mysql-proxy/logs/mysql-proxy.log # 日志路径
log-level=debug
daemon=true
keepalive=true
chmod 660 mysql-proxy.conf
cd share/doc/mysql-proxy/
vim rw-splitting.lua
if not proxy.global.config.rwsplit then
proxy.global.config.rwsplit = {
min_idle_connections = 1, # 更改最大、最小连接数,以便测试
max_idle_connections = 2,
is_debug = false
}
end
mysql-proxy --defaults-file=/usr/local/mysql-proxy/conf/mysql-proxy.conf
netstat -antlp
物理机远程连接proxy
mysql -h 172.25.11.7 -u root -p # 上面的最大、最小连接数为1,2则建议至少连接三次才会实现读写分离
在master安装lsof,查看连接
lsof -i :3306
连接两次之后主上不会再进行连接,第三次会连接在从上
在第三次连接之后插入数据,在master上查看数据,验证是否实现读写分离。