通过mysql-proxy完成mysql读写分离
通过mysql-proxy完成mysql读写分离
发布时间:2016-12-29 来源:查字典编辑
摘要:环境:192.168.100.210192.168.100.104192.168.100.208192.168.100.106说明:210,...

环境: 192.168.100.210

192.168.100.104

192.168.100.208

192.168.100.106

说明:210,104作为mysql数据库.

208作为mysql-proxy.

106作为测试机器.

相关软件下载:

lua

www.lua.org

mysql-proxy

http://mysql.cdpa.nsysu.edu.tw/Downloads/MySQL-Proxy/

1. 在208上安装lua

#tar zxvflua-5.1.4.tar.gz-C/usr/local

# cd /usr/local

#mv lua-5.1.4 lua

#cd lua

#make //make之后可以看到系统列表,下面的

命令要用到

#make linux //我这里是linux

#make install

2.安装mysql-proxy

# tar -zxvf mysql-proxy-0.6.0-linux-rhas4-x86.tar.gz -C /usr/local/

# cd /usr/local/

# mv mysql-proxy-0.6.0-linux-rhas4-x86mysql-proxy

# export PATH=$PATH:/usr/local/mysql-proxy/sbin/

#mysql-proxy --proxy-read-only-backendaddresses=192.168.100.210:3306

--proxy-backend-addresses=192.168.100.104:3306

--proxy-lua-script=/home2/mysql-proxy-0.6.0-linux-rhas4-x86/share/mysql-proxy/rw-splitting.lua &

3.在210,104上设置权限

mysql> grant all privileges on backup.* to

[email=backup@'%']backup@'%'[/email]

identified by 'shenxun';

//这里给个账号backup,密码shenxun,读写操作的数据库是backup.

4.进行测试.

用106连接208的mysql-proxy:

/usr/bin/mysql -u backup -pshenxun –P4040 –h 192.168.100.208 –D backup

创建一个表

Createtable haha(id int,name char(6));

然后我们到210和104上去看下数据库的情况,看到210是没有刚才

写入的数据库表,而104是有刚才写入的数据表的.

现在我们把上面的命令修改下

mysql-proxy --proxy-backend-addresses=192.168.100.210:3306 --proxy-backend- addresses=192.168.100.104:3306 --proxy-lua-script=/home2/mysql-proxy-0.6.0-linux-rhas4- x86/share/mysql-proxy/rw-splitting.lua &

然后我们在208上再重新建个表

Createtable xixi(id int,name char(6));

这个时候再到210和104上去看下数据库的情况,发现2个数据库都有刚才写入的数据

库表.

可以充分说明我们的数据库读写分离已经实现了

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新mysql数据库学习
热门mysql数据库学习
编程开发子分类