首页 > 代码库 > MySQL读写分离之mysql-proxy
MySQL读写分离之mysql-proxy
官网下载地址: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 = truepid-file = /var/run/mysql-proxy.pidlog-file = /var/log/mysql-proxy.loglog-level = debug #调试级别max-open-files = 1024plugins = admin,proxyuser = mysql-proxy##Proxy Configurationproxy-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 Configurationadmin-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;
MySQL读写分离之mysql-proxy
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。