读写分离之mysql-proxy的部署

环境前提 master-slave
mysql-proxy的原理是使用脚本语言lua来实现读写分离相关的功能
官网上下载mysql-proxy组件 mysql-proxy-0.8.4-linux-el6-x86-64bit.tar.gz 解压出来后发现没有 conf目录和 log目录(原来这些需要自己手动创建的)
解压后,习惯性的整体mv /usr/src/mysql-proxy
mkdir conf
mkdir log
增加配置文件 vim conf/mysql-proxy.conf

[mysql-proxy]
daemon=true
user=root
keepalive=true
plugins=proxy,admin
log-level=info
log-file=/usr/src/mysql-proxy/log/mysql-proxy.log #日志文件的目录位置
proxy-address=192.168.3.3:3306    #代理主机的ip和端口
proxy-backend-addresses=192.168.3.7:3306 #主库master的ip和端口
proxy-read-only-backend-addresses=192.168.3.8:3306#读库的ip和端口
proxy-lua-script=/usr/src/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua   #指定读写分离配置文件位置此脚本在mysql-proxy安装包库里就有,无需创建
admin-address=192.168.3.3:4041 #状态查看配置
admin-username=rs
admin-password=Rs123456.
admin-lua-script=/usr/src/mysql-proxy/lib/mysql-proxy/lua/admin.lua

默认的脚本 rw-splitting.lua中需要修改默认的设置
在这里插入图片描述

 min_idle_connections = 1, #默认超过4个连接数时,才开始读写分离,改为1
  max_idle_connections = 2, #默认8,改为2

mysql-proxy的启动 需要手动指定配置文件的位置
启动脚本在bin目录下

./mysql-proxy --defaults-file=/usr/src/mysql-proxy/conf/mysql-proxy.conf

查看端口状态 3306端口是否起来 netstat -anputl
由于之前做主从复制的时候 创建了用户rs 权限为
grant all on *.* to 'rs'@'192.168.3.%' identified by 'Rs123456.'
所以此账户就可通用接下来的所有实验了
使用Navicat for Mysql 进行连接
在这里插入图片描述

回顾点
1 配置文化的手动增加
2 配置文件中指定的读写分离脚本路径是否正确
3 脚本中修改设置数是为了实验,实际情况并不一定需要修改
4 mysql-proxy布置在代理服务器192.168.3.3上( 主库master 192.168.3.7 从库slave 192.168.3.8)

猜你喜欢

转载自blog.csdn.net/weixin_43945743/article/details/85112121
今日推荐