MySQL读写分离之mysql-proxy
时间:2015-01-25 15:03:08
收藏:0
阅读:1687
官网下载地址:http://dev.mysql.com/downloads/mysql-proxy
学习版本:mysql-proxy-0.8.5-1.el6.x86_64
环境准备:
MySQL_A(10.0.13-MariaDB)读写:n1.test.com;172.16.2.11
MySQL_B(10.0.13-MariaDB)只读:n2.test.com;172.16.2.12
MySQL-proxy(0.8.5):n3.test.com;172.16.2.13
mysql-proxy:
epel源:yum -y install mysql-proxy
使用官方二进制格式文件中的rw-splitting.lua脚本进行读写分离
# mysql-proxy --help-all ==>命令帮助
配置文件:/etc/mysql-proxy.cnf

[mysql-proxy]
daemon = true
pid-file = /var/run/mysql-proxy.pid
log-file = /var/log/mysql-proxy.log
log-level = debug #调试级别
max-open-files = 1024
plugins = admin,proxy
user = mysql-proxy
#
#Proxy Configuration
proxy-address = 0.0.0.0:3306 #代理服务监听的地址和端口
proxy-backend-addresses = 172.16.2.11:3306 #支持读写操作的后端mysql
proxy-read-only-backend-addresses = 172.16.2.12:3306 # 只读后端
#proxy-lua-script =
proxy-lua-script = /usr/lib64/mysql-proxy/lua/rw-splitting.lua #读写分离脚本
#proxy-skip-profiling = true
#
# Admin Configuration
admin-address = 0.0.0.0:4041 #msyql-prxoy连入的管理端口
admin-lua-script = /usr/lib64/mysql-proxy/lua/admin.lua #msyql-prxoy连入的管理脚本位置
admin-username = admin #msyql-prxoy连入的管理帐号
admin-password = admin #msyql-prxoy连入的管理密码
后端主机需要创建授权帐号
- mysql> GRANT ALL ON *.* TO root@‘172.16.%.%‘ IDENTIFIED BY ‘cm‘;
- mysql> FLUSH PRIVILEGES;
在mysql-proxy发起查询或修改语句
- # mysql -uroot -h172.16.2.13 -pcm -e ‘SHOW DATABASES;‘
- # mysql -uroot -h172.16.2.13 -pcm -e ‘CREATE DATABASE test9;‘
- 在后端的mysql能看到创建的数据库test9
- # mysql -uadmin -padmin -p4041 -h172.16.2.13
- mysql> SELECT * FROM help
- mysql> SELECT * FROM backends;
评论(0)