网络上的一台机器无法连接到SQL 2005

时间:2009-08-17 15:00:10

标签: sql sql-server-2005 windows-vista connection

我有一台带有3台机器的小型Windows网络。其中一个安装了SQL 2005。截至上周,其他两台机器连接到SQL实例都没有问题。

今天,一台机器 - 运行Vista,如果重要 - 突然无法连接。我收到通用消息“在建立与SQL Server的连接时出现与网络相关或特定于实例的错误。未找到服务器或无法访问服务器。验证实例名称是否正确以及SQL Server是否配置为允许远程连接。“

我很确定在SQL 2005的情况下,所有内容都已正确设置,因为网络上的第三台计算机仍然可以正常连接。

Vista计算机没有设置防火墙,没有任何改变,除了我几天前创建了与VPN的连接。当连接到VPN时,本地网络连接被清除,但是在尝试访问SQL Server时,我已经多次检查过我没有连接到VPN。我之所以提到这一点,只是因为这是我能想到的唯一改变的东西。

我多次重启所有电脑。没有变化。

我通过SQL Integrated Security连接。登录从第三台机器正常工作。

Vista盒子上还有一件奇怪的事情。偶尔 - 也许有5%的时间 - 它会连接,但是当试图访问一个表(比如,只是右键单击并选择“打开”)时,它会暂停,然后会出现“未指定的错误。”

有什么想法吗?我完全感到困惑。这已经工作了大约18个月而没有任何错误,除了上面提到的VPN连接之外,我想不出任何改变。而且重申 - 当我收到此错误时,我肯定没有连接到VPN。

2 个答案:

答案 0 :(得分:0)

检查用于连接SQL Server的协议;我想知道它是否正在尝试通过命名管道而不是TCP / IP进行通信(从最近的经验来看 - 当我禁用命名管道并启用TCP / IP时,我遇到了命名管道的问题)。

您可以使用SQL Server配置工具在服务器上进行检查,并查看SQL Server实例启用了哪些协议(在导航树的“网络配置”分支下)。

答案 1 :(得分:0)

首先,我们知道这里没有客户端服务器通信。因此,根据错误,它不是权限或身份验证(您必须先连接才能被拒绝访问)。

尝试以下方法:

1)Ping - 你能到达服务器吗?在命令提示符下运行此命令:

ping servername

如果这样做,那么至少名称正在解析,客户端可以进行通信。 如果失败,请尝试使用服务器的IP。

2)Telnet - 假设您没有非标准端口(显式更改或命名的SQL Server实例),请在命令提示符下运行:

telnet servername 1433

如果这打开一个空屏幕,那么客户端可以到达该端口。 如果失败,请尝试使用IP的相同命令。如果仍然失败,则您没有从该计算机到SQL Server的路径。您将需要验证外部防火墙或其他网络连接问题。