作者:徐振业
1、下载mysql-proxy
http://ftp.ntu.edu.tw/pub/MySQL/Downloads/MySQL-Proxy/mysql-proxy-0.6.0-linux-rhas4-x86.tar.gz
2、安装mysql-proxy
# tar zxvf mysql-proxy-0.6.0-linux-rhas4-x86.tar.gz
# mv mysql-proxy-0.6.0-linux-rhas4-x86 /usr/local/proxymysql
# cd /usr/local/proxymysql/
# ls
sbin share
# cd sbin/
# ls
mysql-proxy
安装完毕
3、使用mysql-proxy
查看帮助 :
#./ mysql-proxy --help-all
参数说明:
--admin-address= admin-server 的地址 默认本机:4041
--proxy-address= proxy-server 的地址 默认本机:4040
--proxy-read-only-backend-addresses= 远程slave-server 默认没有设置
--proxy-backend-addresses= 备用服务器默认 (default: 127.0.0.1:3306)
--proxy-lua-script. = lua脚本的名称
启动mysql-proxy (前提 :本机安装mysql 并可通过远程登录,假设本机地址为
192.168.1.1)
#cd /usr/local/proxymysql/sbin
#./mysql-proxy &
#ps –ef
可以看到该进程
通过mysql-proxy 登录mysql
本机登陆:
#/usr/local/mysql/bin/mysql –uroot –p –P 4040
远程登陆:
C:>mysql –h192.168.1.1 –utesting –ptesting –P 4040
4、使用Lua脚本完成读写分发
#cd /usr/local/mysqlproxy/sbin
#mkdir proxy
#ls
mysql-proxy proxy
登陆cvs:
http://172.20.16.8/cgi-bin/cvssi/SI/dir?d=SystemIntegration/database/mysql/reference 下载 rw-splitting.lua 并拷贝到 /usr/local/mysqlproxy/sbin 目录下。
下载 auto-config.lua balance.lua commands.lua. parser.lua tokenizer.lua
并拷贝到 /usr/local/mysqlproxy/sbin/proxy 目录下。
5、测试环境
192.168.1.1 : mysql master
192.168.1.2 : mysql slave
Replication database : backup
Tables in replication database: proxy
On master :
Mysql> use backup;
Mysql>select * from proxy;
+----------+
| name |
+----------+
| testing |
| lsps-efd |
| 2 |
| 1 |
| 0 |
| 1111 |
| 1 |
| 2 |
| 1 |
| 0 |
+----------+
On slave :
Mysql>use backup;
Mysql>select * from proxy;
+----------+
| name |
+----------+
| testing |
| lsps-efd |
| 1 |
| 0 |
| 1 |
| 0 |
| 1111 |
| 1 |
+----------+
在mysql-proxy 的服务器启动mysql-proxy:
#/usr/local/mysqlproxy/sbin/mysql-proxy --proxy-read-only-backend-addresses=192.168.1.2:3306 --proxy-backend-addresses=192.168.1.1:3306 --proxy-lua-script=rw-splitting.lua &
为了看到显示结果,通过客户端(客户端要安装mysql)多次发送以下请求命令:
C:>mysql –h192.168.1.1 –utesting –ptesting –P 4040 –D backup –e “select * from proxy “
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/90618/viewspace-612222/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/90618/viewspace-612222/