如何解决 SQL Server 2000 中的连接问题( 二 )

验证命令解析的是正确的服务器名 。如果两个指定的命令有任何一个不成功、超时或没有返回正确的值,那么 DNS 查找未能正常工作,或者有其他网络或路由问题引发问题 。要查看当前 DNS 设置,在命令提示符下运行下列命令:ipconfig /all有关 ipconfig 命令的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 223413 (http://support.microsoft.com/kb/223413/) Windows 2000 中 Ipconfig.exe 的选项
要解决此问题,可以在客户端计算机上的 %systemroot%system32driversetchosts 文件中为服务器添加一个条目 。要解决此问题,还可以使用命名管道网络库连接到服务器 。
验证启用的协议和别名loadTOCNode(3, "moreinformation");如果客户端计算机上的别名设置错误,可能会引起连接问题 。您可以使用客户端网络实用程序查看别名 。为此,请按以下步骤操作: 1.启动客户端网络实用程序 。如果 SQL Server 客户端工具被安装在正在运行客户端应用程序的计算机上,请按照以下步骤启动客户端网络实用程序: a. 单击“开始”,然后指向“程序” 。b. 指向“Microsoft SQL Server”,然后单击“客户端网络实用程序” 。如果 SQL Server 客户端工具没有安装在客户端计算机上,请按照以下步骤启动客户端网络实用程序: a. 单击“开始”,然后单击“运行” 。b. 在“运行”对话框中,在“打开”框中键入 cliconfg,然后单击“确定” 。2.在“SQL Server 客户端网络实用程序”窗口中,单击“常规”标签,然后启用您要使用的所有协议 。
注意:您必须至少启用 TCP/IP 协议和命名管道协议 。3.单击“别名”标签,然后验证为 SQL Server 实例所配置的别名 。4.验证别名的属性,确认服务器名或 IP 地址和协议的配置是正确的 。通过使用服务器名、IP 地址或者其他协议,您可以创建一个新的别名以测试连接性能 。
注意:在 Microsoft 数据存取部件 (MDAC) 的早期版本中,客户端网络实用程序的用户界面是不同的 。因此,如果您没有看到本文中列出的选项,请在运行客户端应用程序的计算机上安装 MDAC 的新版本 。
验证 SQL Server 实例正在正确地侦听loadTOCNode(3, "moreinformation");要验证 SQL Server 实例正在正确地侦听命名管道、TCP/IP 或您在客户端应用程序中使用的其他协议,请打开当前的 SQL Server 错误日志文件 。SQL Server 错误日志文件可能包括与以下类似的条目:2003-11-06 09:49:36.17 server SQL server listening on TCP, Shared Memory, Named Pipes. 2003-11-06 09:49:36.17 server SQL server listening on 192.168.1.5:1433, 127.0.0.1:1433.
通过分析 SQL Server 错误日志文件中的条目,可以验证 SQL Server 实例是否正在侦听正确的 IP 地址和端口 。在默认情况下,一个默认的 SQL Server 实例侦听端口 1433 。您还可以使用服务器网络实用程序来验证 SQL Server 的协议设置并更改 SQL Server 中的属性,包括可以连接到 SQL Server 和可以使用的端口的协议 。关于使用服务器网络实用程序的更多信息,请参见 SQL Server 在线参考书中的“SQL Server 网络实用程序”专题 。
有时候,SQL Server 2000 可能不会绑定于端口 1433 或任何其他指定的端口 。如果端口正被其他应用程序使用,或者如果您正在尝试使用一个错误的 IP 地址进行连接,就可能会出现此问题 。因此,TCP/IP 到 SQL Server 的连接可能不成功,在 SQL Server 错误日志中您会收到下列错误信息: 2001-11-14 15:49:14.12 server SuperSocket Info:Bind failed on TCP port 1433.有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 307197 (http://support.microsoft.com/kb/307197/) PRB:TCPIP 端口正由另一应用程序使用

推荐阅读