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


如果通过 TCP/IP 连接您不能连接到 SQL Server 实例,请尝试使用命名管道协议或共享内存协议 。在命令提示符下运行下面的命令,以获取关于正在使用的端口的信息:NETSTAT -an您还可以使用 Portqry 命令行实用程序来获取关于正在使用的端口的更多信息 。
有关 Portqry 命令行实用程序的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 310099 (http://support.microsoft.com/kb/310099/) Portqry.exe 命令行实用程序说明 有关与 TCP/IP 套接字相关的可能的错误的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 306865 (http://support.microsoft.com/kb/306865/) BUG:当 TCP/IP 是唯一的协议时,SQL Server 可能无法侦听 TCP/IP 套接字
注意:对于 SQL Server 命名实例,SQL Server 动态地决定端口并侦听决定的端口 。因此,当您启动 SQL Server 命名实例时,SQL Server 将设法侦听之前使用的端口 。如果 SQL Server 不能绑定到该端口,命名实例可能会动态地绑定到另一个端口 。在这种情况下,请确认客户端应用程序也被设置为动态地决定端口 。作为选择,您还可以为命名实例指定一个静态端口,通过客户端网络实用程序对其进行绑定和侦听 。
有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 286303 (http://support.microsoft.com/kb/286303/) INF:动态端口检测过程中 SQL Server 2000 网络库的行为 823938 (http://support.microsoft.com/kb/823938/) 如何在 SQL Server 2000 中使用静态和动态端口分配
解决 MDAC 问题loadTOCNode(3, "moreinformation");MDAC 的问题也可能会引起连接问题 。例如,安装一个软件可能会覆盖一些 MDAC 文件或更改权限,而您需要这些权限才能访问 MDAC 文件 。您可以运行 MDAC 部件检查器来验证 MDAC 在计算机上的安装 。
有关如何确定您当前的 MDAC 版本的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 301202 (http://support.microsoft.com/kb/301202/) 如何检查 MDAC 版本
注意:如果您正连接到 SQL Server 的一个命名实例,请确认计算机上运行的是 MDAC 2.6 或更新的版本 。MDAC 的早期版本不识别 SQL Server 的命名实例 。因此,可能无法连接到命名实例 。
您可以使用 Odbcping.exe 实用程序来验证通过 SQL Server ODBC 驱动程序的连接 。
有关 Odbcping.exe 的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 138541 (http://support.microsoft.com/kb/138541/) 如何使用 Odbcping.exe 验证到 SQL Server 的 ODBC 连接 有关配置 ODBC DSN 的其他信息,请单击下面的文章编号,查看 Microsoft 知识库中的相应文章: 289573 (http://support.microsoft.com/kb/289573/) PRB:使用 SQL Server Net-Libraries(SQL Server 网络库)配置 DSN
您还可以使用一个 .udl 文件测试与 SQL Server 实例的连接 。
有关如何创建 .udl 文件的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 244659 (http://support.microsoft.com/kb/244659/) 示例:如何在 Windows 2000 中创建数据链接文件
解决防火墙问题loadTOCNode(3, "moreinformation");如果防火墙存在于客户端计算机和正在运行 SQL Server 的计算机之间,请确认通过防火墙进行通信时所需的端口已打开 。
有关通过防火墙进行通信时必须打开的端口的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 287932 (http://support.microsoft.com/kb/287932/) INF:通过防火墙与 SQL Server 进行通信所需的 TCP 端口 269882 (http://support.microsoft.com/kb/269882/) 如何使用 ADO 连接到防火墙后的 SQL Server
如果您使用 TCP/IP 协议连接 SQL Server 实例,请确认能够用 Telnet 程序连接到 SQL Server 正在侦听的端口 。要使用 Telnet 程序,在命令提示符下运行下列命令:Telnet

推荐阅读