我可以通过SSH隧道合并SQL Server 2005吗?

Sör*_*lau 7 ssh vpn replication sql-server-2005 tunnel

我们的用例是一个负责帐户,会话,许可证等的数据库-需要在客户端启动时对其进行轮询,因此高可靠性至关重要。因此,我们希望在物理上独立的网络中的不同服务器之间进行复制,以防整个数据中心发生故障。我已经成功建立了对同一网络中另一台服务器的推送订阅,因此通常可以正常工作。现在需要连接到网络外部服务器。

复制不能直接在网络之间进行。Microsoft 建议使用VPN或Web复制。后者使我感到效率低下(他们的确说:“注意:Web同步旨在与便携式计算机,手持设备和其他客户端进行数据同步。Web同步不适用于大量的服务器到服务器应用程序。”)

前者VPN可以工作,但是我仍然认为它是连续运行VPN连接的不必要的复杂解决方案(更不用说增加了安全隐患)。我宁愿只运行SSH隧道。但是,我找不到任何有关如何执行此操作的文章,并且与MySQL无关。

我在订阅服务器上设置了SSH服务器,并使用PuTTY建立了从<publisher>:1434到的隧道<subscriber>:1433。但是,我无法使SQL Server Management Studio以这种方式进行连接(我不确定它是否支持:端口语法)。我还在<publisher>“ SQL Server配置管理器” 上设置了一个别名,以@@servernameof <subscriber>指向localhost:1434。连接到那似乎也不起作用。

我使用了推送订阅选项,因此我认为发布者需要连接到订阅者,而不是“倒过来”。

这两个服务器都使用默认实例,并在Windows Server 2003 SP 2上运行SQL Server 2005 SP2。订阅服务器上的SSH服务器为freeSSHd 1.2.1。

这有可能吗?我还有另一种方法可以利用SSH假装该计算机存在于同一网络中吗?还是我必须使用VPN?

Phi*_*ier 3

当您谈论服务器的不同位置时,是否也意味着不同的域?您对 Web 复制的评论是正确的,但仅适用于对数据库所做的日常更改。您的初始快照可以是任何大小,即使它是一个巨大的数据库。如果您的每日更新有限(我认为几千次就可以了),那就继续吧。很快!

编辑:

当您开始考虑在服务器之间交换数据时,存在一个主要的域/安全问题。如果您需要通过 VPN 或任何专用链接连接属于不同域的服务器,并且如果您不想通过 SQL Security(避免它!),您将面临与域信任相关的特定(和许可!)问题。Web 复制的聪明之处之一是通过 https 协议保护连接来避免此类问题(以及额外成本)。