2012-12-09 88 views
3

我在本地网络中使用Squid作为Web缓存的代理服务器。我在VB.NET中开发了一个实用程序,它需要通过Internet远程连接到远程服务器上的MySQL数据库。如果禁用代理服务器,我可以连接到远程服务器,但如果代理服务器已启用,则无法连接到远程服务器。通过Squid代理服务器绕过MySQL数据库的远程连接

我不知道我是否可以在本地代理服务器上使用MySql Proxy,以及我需要做什么样的配置。

下面是我的鱿鱼配置;

ACL定义允许直通鱿鱼
ACL SSL_ports 端口443
ACL Safe_ports端口80#HTTP
ACL Safe_ports 端口21#FTP
ACL Safe_ports端口1025-65535# 未注册端口
ACL Safe_ports端口的端口3306#mysql的远程连接 ACL
Connect方法CONNECT

的http_access 否认!Safe_ports
的http_access允许Safe_ports
的http_access 允许连接!SSL_ports

我能有什么样的替代来实现类似的配置,它的Web缓存+ MySQL数据库的远程连接。

回答

1

Squid根本无法代理MySQL。 您必须配置您的防火墙(或使用直接连接,NAT等)才能使用远程连接。

+0

我没有安装防火墙。你能指导我还能做什么?有关直接连接或NAT的更多信息?但感谢您的答案。 – Rafi

+0

我正在制作一个.net应用程序来连接到远程数据库。 – Rafi

0

我已设法使其与Microsoft Forefront TMG合作。将为所有用户创建一个访问规则,使用从内部到外部的端口3306出站连接。防火墙客户端也应安装在客户端机器上。

Squid和Polipo不能用于需要到MySql的远程连接的环境中。在这种情况下,在代理之前设置本地服务器,以及与远程服务器或VPN/SSH的一些同步机制是可能的。

希望它对其他相关读者有所帮助。

0

我也在研究代理数据库流量。 Squid不能代理MySQL流量,但您确实想代理MySQL流量,您可以尝试SQLProxy,这是一个IIS插件来代理MySQL流量。

在Windows,Mac和Linux上运行的基于Java的解决方案是TcpCatcher。它主要用于监视和更改TCP流量,但它也可以用作a pure proxy server

如果您打算使用基于* nix的解决方案,则可以使用High Availability Proxy ("HAProxy")作为TCP/HTTP负载平衡器,它可用于代理MySQL数据库连接以及HTTP连接。

http://www.severalnines.com/resources/clustercontrol-mysql-haproxy-load-balancing-tutorial(截至2013年6月),有一个使用HAProxy代理MySQL连接的教程和信息页面。以下是使用HAProxy代理单个MySQL连接的示例:http://flavio.tordini.org/a-more-stable-mysql-with-haproxy

相关问题