MySQL Proxy逐步配置

时间:2013-11-11 08:56:32

标签: mysql windows proxy lua load-balancing

我的本​​地网络中有一个apache Web服务器(本地IP 192.168.0.100)。有一个使用MySQL数据库的网站。我添加了一个从属服务器(本地IP 192.168.0.101)并配置了数据库复制。现在,我想添加一个代理服务器来实现负载平衡(至少要测试它是如何工作的)。所以,我在另一台机器上安装了MySQL Proxy(本地ip 192.168.0.102),我用这种方式创建了一个服务

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"

在coonfiguration文件中,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线上,我跑了

net start proxy

我看到它正在运行而没有错误。但是现在我被困住了,不知道接下来该做什么。在某些指南中,他们建议运行此查询:

mysql> select * from proxy_connections;

但是在哪里跑,怎么跑 - 没人说。如果我只是在我的主服务器上运行它,我显然会收到错误“没有选择数据库”。其他用户指南几乎从一开始就讨论lua脚本。但至少现在我不需要那样做。我想要的只是检查负载平衡。一个简单的测试用例是对数据库执行查询,以及查看代理如何工作。另外,伙计们,我看到mysql proxy share文件夹包含很多lua脚本。我看到ro-balance例如。 Lib目录还包含balance.lua。我想,使用这些脚本可以更轻松地实现负载平衡 - 可能我只需要指定读写服务器。所以,如果你已经完成了所有这些步骤 - 为了获得最简单的负载平衡工作,请分享你的经验。

1 个答案:

答案 0 :(得分:3)

以这种方式启动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