今天临时换来值班,在阳光的沐浴下看了半天的mysql-proxy,单机上的实验完成,我想在网站的mysql-rep集群上可以应用看看,替换现在通过脚本实现R/w控制和轮询的机制,对于开发人员来讲,mysql-rep集群的操作将完全透明。
mysql-proxy –proxy-address=192.168.0.60:4406 –proxy-backend-addresses=192.168.0.68:3306 –proxy-backend-addresses=192.168.0.69:3306 –proxy-lua-script=/home/ftpuser/mysql-proxy/share/test-conn.lua
其中192.168.0.60:4406是mysql-proxy对外提供的mysql连接端口,192.168.0.68:3306和192.168.0.69:3306是两台rep数据库
test-conn.lua
print("read_query: connection.backend_ndx: ", proxy.connection.backend_ndx)
end
function connect_server()
local server_index = math.random(1, 2)
proxy.connection.backend_ndx = server_index
end
步骤不用写了,网上参考的一些资源很详细:
MySQL Proxy 学习笔记
http://www.lupaworld.com/22802/viewspace_39480.html
用MySQL-Proxy实现读写分离
http://groups.google.com/group/javakb/browse_thread/thread/9d4e4330c8c0d134
MySQL Proxy 安装与读写分离体验
http://blog.chinaunix.net/u/29134/showart_482210.html
MySQL代理的介绍及个人使用经验
http://www.phpchina.com/78/viewspace_23546.html
http://dev.mysql.com/doc/refman/5.1/en/mysql-proxy.html
http://forge.mysql.com/wiki/MySQL_Proxy