我们目前正在使用安装在远程CentOS盒上的PostgreSQL转向使用安装在远程Windows Server 2008 R2盒子上的MS SQL Server 2008 R2。
我们使用此数据库的Web应用程序已安装并运行在另一个将保留的CentOS盒中。
所有这些框都由第三方托管服务提供商提供,并且都在同一个域网络中。
因此,我们的开发远离服务器/数据库域,因为我们的开发机器是远程的。在过去开放VPN足以让我们在我们的PC上本地运行的Web应用程序的开发实例远程连接到运行在CentOS盒子上的PostgreSQL数据库。
但是现在我们在使用Windows Server 2008 R2框时遇到了同样的麻烦。即使VPN打开,任何连接(甚至ping)远程服务器计算机的尝试都会超时。
我们在新数据库服务器上获取数据库实例连接的代码是正确的,因为当我们将该代码上传到CentOS应用程序框并运行它时,它连接正常,因为代码现在在一个框中运行与Windows Server 2008 R2框相同的物理域。但是,我们需要从远程开发机器建立连接。
这有意义吗? 我们需要更改一些Windows防火墙设置以允许远程连接吗? 正如我所说,我们甚至无法从远程盒子PING新的Windows Server 2008 R2机器。
答案 0 :(得分:8)
以下是对我的远程连接有效的总结。我不是这方面的专家,所以我的一些步骤可能没有必要。我从这个问题的其他答案中采取了一些步骤。
就像另一个答案所说,你必须在你的客户端使用正确的连接字符串。
答案 1 :(得分:7)
执行以下操作:
SQL Server Configuration Manager
SQL Server Network Configuration
考虑以下事项:
答案 2 :(得分:1)
确保取消阻止用于SQL Server的1433端口。如果您的实例已命名,则需要在配置管理器中为此实例设置端口,然后在防火墙中取消阻止此端口。
答案 3 :(得分:1)
结合其他答案的提示和我们的托管服务提供商的帮助,我们设法解决了这个问题。这主要是由我们的提供商阻止这些端口的问题。
答案 4 :(得分:1)
据我所知,这是一个旧帖子,但要检查的另一件事是确保您在SQL Server网络配置的IP地址选项卡上启用了特定的IP地址和端口,这是对其他帖子的补充。有关详细信息,请参阅此LINK
答案 5 :(得分:-1)
如果Ip配置和其他事情后仍然存在问题。
请检查客户端电脑的日期时间。
它应该与服务器相同
[我最近用这种技术解决了]
如果客户端计算机未与服务器时间同步客户端未连接到服务器,则sql server中存在问题。