我的本地网络中有一个 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"
在配置文件中,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
在命令行中我跑了
net start proxy
我看到,它运行没有错误。但现在我被困住了,不知道下一步该怎么做。在一些指南中,他们建议运行此查询:
mysql> select * from proxy_connections;
但是在哪里运行,如何运行 - 没有人说。如果我只是在我的主服务器上运行它,我显然会收到错误“未选择数据库”。其他用户指南几乎从一开始就讨论 lua 脚本。但我不需要那个,至少现在是这样。我想要的是简单地检查负载平衡。一个简单的测试用例是对数据库执行查询,并查看代理是如何工作的。此外,伙计们,我看到 mysql 代理share
文件夹包含很多 lua 脚本。例如,我看到ro-balance
了。Lib
目录还包含balance.lua
. 我想,使用这些脚本进行负载平衡会更容易——可能我只需要指定读写服务器。因此,如果您已经完成了所有这些步骤 - 只是为了获得最简单的负载平衡工作,请分享您的经验。