SQL 通讯错误 17832、17824、1608、232 和 109

文章翻译 文章翻译
文章编号: 109787 - 查看本文应用于的产品
展开全部 | 关闭全部

本文内容

概要

可能会出现很多种与 Microsoft SQL Server 通讯相关的错误。通常,这些错误并不表示 SQL Server 有问题,而是网络、网络配置或客户端应用程序有问题。

可能的错误包括:

服务器端错误

  • 17832 无法关闭服务器端连接
  • 17825 无法关闭服务器端连接
  • 17824 无法写入服务器端连接
  • 10058 套接字关闭后无法发送
  • 10054 对方将连接复位
  • 10053 软件造成连接中止
  • 1608 将结果发送到前端时遇到网络错误
  • 232 正在关闭管道
  • 109 管道已结束

客户端错误

  • 10008 来自 SQL Server 的标记错误:数据流处理不同步
  • 10010 从 SQL Server 读取数据失败
  • 10018 关闭网络连接时出错
  • 10025 写入 SQL Server 失败

更多信息

在客户端和服务器端上,SQL Server 及其应用程序大都存在于 ISO(国际标准化组织)网络层上。SQL Server 下的网络层和系统层负责建立和保持可靠的网络连接。

SQL Server 的使用此媒介的这种行为在某种程度上类似于购买和使用电话的双方。连接的每一端上的电话都依赖于电话网络来建立和保持可靠的连接。只有在很少情况下,才会将造成诸如静电噪声、通话质量不好或连接丢失等等问题的原因追踪到用户的电话设备上。多数情况下,都必须在连接两个用户的电话网络中解决任何连接问题。

同样,本文中列出的大多数错误只是基础连接丢失在 SQL 层上的体现。它们本身并不表明 SQL Server 有问题。连接丢失通常是由客户端工作站重新启动造成的,在这种情况下,服务器会向客户端报告连接丢失。诸如内存耗尽等客户端应用程序错误或系统错误可能会导致客户端程序挂起或异常中止,从而也将导致服务器报告连接丢失。可以对客户端系统进行调试来检查这一点。连接客户端和服务器的网络中的各种硬件和软件问题也可能会导致这些错误。在这些情况下,要想成功解决问题,关键在于确认是网络问题、应用程序问题还是系统性质问题,并将工作重点放在有问题的区域上。

成功的方法包括:确定发生问题时用户在客户端计算机上进行了什么操作,在调试器中运行客户端应用程序,以及使用网络分析器(如 Network General Sniffer 或 Novell Lanalyzer)监控发生错误期间客户端和服务器之间的通讯。

下面提供了有关这些错误的附加详细信息。

服务器端错误

17832 Unable to read login packet(s). [仅限 NT]
如果客户端开始连接,但由于客户端操作系统或应用程序故障而从未成功完成尝试,则会发生此错误。如果在从连接尝试开始到结束这一段时间内网络出现问题,则也可能会导致此错误。

17825 无法关闭服务器端连接。[仅限 NT]
如果 SQL Server 在尝试关闭与客户端的网络连接时收到错误,则可能会发生此问题。通常,绝对不应该发生此错误。有时之所以会看到此错误,是因为其他较严重错误的副作用所造成的,如果存在这些较严重的错误,您应该先重点解决这些错误。

17824 无法写入服务器端连接。[仅限 NT]
如果 SQL Server 尝试写入客户端连接且写入失败,则可能会发生此错误。导致此错误的原因可能是:客户端计算机被挂起或关闭,或者网络出现问题。如果重新启动客户端计算机,通常会看到此问题。

10058 套接字关闭后无法发送。[仅限 NT]
如果套接字客户端(该客户端包括 SPX)正在频繁地将数据发送到 SQL Server 或从中接收数据,且客户端应用程序被挂起或中断或者突然关闭,则可能会发生此错误。在基于套接字的连接上,此错误通常会与错误 17824 一起出现。与错误 17824 类似,错误 10058 通常是由客户端计算机挂起、中断或突然关闭导致的。例如,使用 NWLink SPX 传输的 Microsoft Windows NT 客户端可能正在将数据插入 SQL Server,如果客户端应用程序被中断,您将看到错误 10058。

10054 对方将连接复位。[仅限 NT]
如果套接字客户端(该客户端包括 SPX)正在频繁地将数据发送到 SQL Server 或从中接收数据,而网络连接丢失,则可能会发生此错误。在基于套接字的连接上,此错误通常会与错误 17824 一起出现。例如,使用 NWLink SPX 传输的 Microsoft Windows NT 客户端可能正在从 SQL Server 中选择数据,如果从 SQL Server 计算机上拔掉网络电缆,您将看到错误 10054。

10053 软件造成连接中止。[仅限 NT]
如果套接字客户端(该客户端包括 SPX)中止了连接,则可能会发生此错误。在基于套接字的连接上,此错误通常会与错误 17824 一起出现。与错误 17824 一样,造成此错误的原因通常是:客户端计算机挂起或突然关闭,或者客户端应用程序或网络出现问题。

1608 将结果发送到前端时遇到网络错误。[OS/2 和 NT]
在原因上类似于 17824、10058、10054 和 10053。正如错误语法指出的那样,此错误通常与网络相关。

232 正在关闭管道。[OS/2 和 NT]
如果在读取期间命名管道连接丢失,则可能会发生此错误。错误 232 是一个标准系统错误代码,在许多常见的参考资料(包括 Microsoft Visual C++ 附带的 WINERROR.H 文件)中均有记载。SQL Server 尝试命名管道操作,并且调用返回了 232 故障代码。它通常与错误 17824 和 1608 一起出现,并且具有类似的原因。

109 管道已结束。[OS/2 和 NT]
如果在写入期间命名管道连接丢失,则可能会发生此错误。此错误的原因类似于错误 232 的原因。

客户端错误

这些 DB-Library (DB-Lib) 错误通常对应于上述的服务器端错误。它们通常从客户端角度指明网络连接丢失的情况。如果网络本身出现故障、管理员终止了网络连接或 SQL 进程,或者服务器端 SQL 进程中止,则可能会发生此错误。通过检查 SQL Server 错误日志中是否有访问冲突或类似错误,您可以轻松地确定错误是否为 SQL 问题。如果发现不是这种情况,则您应将问题作为网络、网络配置、系统或应用程序问题来追踪。

如果发现在时间上与特定客户端通信错误的发生时间相对应的服务器端通信错误,这通常表示存在网络问题。

10008 Bad token from SQL Server:datastream processing out of sync.
通常由网络连接突然中断引起,它将导致要由客户端读取的表格格式数据流标记损坏。

10010 Read from SQL Server failed.
客户端正在从 SQL Server 网络数据流中读取,而读取操作返回了故障代码。DB-Library 也可能会返回特定于网络的错误代码,该错误代码对网络支持提供商诊断问题可能很有用。

10018 Error closing network connection.
客户端尝试关闭网络连接,而关闭操作返回了故障代码。DB-Library 也可能会返回特定于网络的错误代码,该错误代码对网络支持提供商诊断问题可能很有用。

10025 Write to SQL Server failed.
客户端正在写入 SQL Server 网络数据流,而写入操作返回了故障代码。DB-Library 也可能会返回特定于网络的错误代码,该错误代码对网络支持提供商诊断问题可能很有用。

属性

文章编号: 109787 - 最后修改: 2006年8月11日 - 修订: 4.1
这篇文章中的信息适用于:
  • Microsoft SQL Server 6.0 标准版
  • Microsoft SQL Server 6.5 标准版
  • Microsoft SQL Server 7.0 标准版
关键字:?
kberrmsg kbinfo kbtshoot kbenv KB109787
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com