我的本地网络中有一台apache web服务器(本地ip为192.168.0.100)。有一个使用MySQL数据库的网站。我又增加了一台备机(本地ip为192.168.0.101),并配置了数据库复制。现在,我想添加一个代理服务器来实现负载均衡(至少测试它是如何工作的)。因此,我在另一台机器(本地ip为192.168.0.102)上安装了MySQL代理,我以这种方式创建了一个服务
C:\> sc create "Proxy" DisplayName= "MySQL Proxy" start= "auto" binPath="C:\mysql-proxy\bin\mysql-proxy-svc.exe --defaults-file= C:mysql-proxy\mysql-proxy.cnf"在配置文件mysql-proxy.cnf中,我放入了以下几行:
[mysql-proxy]
daemon = true
log-file = "C:\mysql-proxy\mysql-proxy.log"
log-level = debug
proxy-address = 192.168.0.102:4040
proxy-backend-addresses = 192.168.0.100:3306,192.168.0.101:3306在coomand line中,我跑了
net start proxy我看到,它正在运行,没有错误。但现在我被卡住了,不知道下一步该做什么。在一些指南中,他们建议运行以下查询:
mysql> select * from proxy_connections;但是去哪里跑,怎么跑--没有人说。如果我只是在我的主服务器上运行它,我显然会得到一个错误“没有选择数据库”。其他用户指南几乎从一开始就讨论lua脚本。但我不需要,至少现在不需要。我想要的是简单地检查负载平衡。一个简单的测试用例是执行对数据库的查询,并查看proxy是如何工作的。另外,伙计们,我看到mysql proxy share文件夹里有很多lua脚本。例如,我看到了ro-balance。Lib目录也包含balance.lua。我想,使用这些脚本可以更轻松地实现负载平衡--我可能只需要指定读写服务器。所以,如果你已经经历了所有这些步骤--只是为了获得最简单的负载平衡工作,请分享你的经验。
发布于 2013-11-11 18:44:05
按如下方式启动MySQL代理:
C:\MySQL_proxy\> mysql-proxy.exe --proxy-backend-addresses=<MySQLserver host/IP>:mysql server port --proxy-address=<proxy host>:<proxy port>您可以使用Mysql命令行工具或任何其他MySQL客户端进行测试,查看它是否连接到MySQL代理。
mysql -uroot -p -hmysql_proxy-host-name -Pmysql-proxy-port https://stackoverflow.com/questions/19902308
复制相似问题