好的,这是交易:
我正在使用VPN连接到Windows 2003 Server。 在此服务器上,有一个远程SQL Server 2005 Express引擎。
我可以使用Visual Studio 2008连接到数据库。
但是我不能做的是用SQL Server 2005 Management Studio(Standard)连接到同一个数据库。
我已经检查了连接信息一百次,但仍然没有。
一个想法:做VS SSMS使用相同的SQL提供程序?
注意:我正在运行Windows 7 RC。 我完全没有问题在Vista下使用相同的configuration。
我假设你已经记得包含实例名称(server \ SQLEXPRESS)?
尝试在同一台服务器上创build一个ODBC。 如果你得到同样的错误, 创build另一个ODBC,但使用常规的“SQL Server”驱动程序,并在“客户端configuration”设置中select“命名pipe道”。
此外,SQLChickens提示确保SQL浏览器在服务器上启动是有效的。
另外,请尝试使用IP地址而不是NetBios名称。
如果您的SQL Express引擎需要确保SQL浏览器服务正在运行,否则客户端将无法在服务器端看到命名实例。
MSDN上的这个post有很多其他的链接和清单来帮助解决这个问题:
从post:
各种原因分为五类:
摘要清单:
我证实了在我的情况下(与几乎相同的问题陈述),服务器是好的,我可以通过禁用Windows 7防火墙的公共configuration文件来达到它。 (我也可以到达不同的SQL Server 2005服务器,而不是我的VPN,所以这显然是我的一个问题,但也与服务器的configuration有某种交互)。
入站规则有两对SQL Server Management Studio的规则,允许任何UDP和任何TCP端口,为“私人”和“域”configuration文件,程序SqlWb.exe。 这些都没有启用。
我改变了一对规则为所有三个configuration文件(公共,私人,域)服务,启用它们,我能够连接。