排除数据库引擎启动时出现的协议错误

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

排除数据库引擎启动时出现的协议错误

/zh-cn/library/ms36539 2.aspx

SQL Server 2008 R2

其他版本

当SQL Server 数据库引擎在启动期间遇到与协议有关的错误时,错误消息将写入SQL Server 错误日志和Windows 事件日志,其格式如下:

“错误: 17182,严重性: 16,状态: 1。”

“TDSSNIClient 初始化失败,出现错误,状态代码。”

在上述消息中, 是由通信子系统或安全子系统返回的基础错误代码, 是SQL Server 的内部协议错误状态。

注意

解释错误代码

基础错误代码 通常是指由Windows 网络层或安全支持提供程序接口(SSPI) 调用返回的错误代码。对于Windows 网络错误代码,运行net helpmsg命令可以帮助解释该代码。SSPI 错误代码不容易解密。可能必须搜索Microsoft 知识库,如果安装了操作系统SDK,则检查WinError.h 文件。

解释协议错误状态代码

下表中列出了SQL Server 协议错误状态。注意,多数错误状态都指示一个内部错误条件,但是具体的值可以指明出现错误的特定协议区域。例如,如果值介于7 和30(0x0A 和0x1E)之间,则错误源自TCP/IP 处理。错误消息中的状态代码以十六进制格式表示。下表提供了等效的十进制以便更加清晰明了。

以十六进制格式表示的状态代码范围以十进制格式表示的状态代码范

协议区域

0x03 3 共享内存

0x07-0x1E 7-30 TCP/IP

0x1F-0x23 31-35 专用管理员连接

(DAC)

0x35 53 命名管道

0x36 54 虚拟接口适配器

(VIA)

0x38 56 安全套接字层(SSL) 0x40-0x4F 64-79 共享内存

0x50-0x5F 80-95 命名管道

0x60-0x6F 96-111 VIA

0x70-0x7F 112-127 HTTP

0x80-0x8F 128-143 SSL

0x90-0x9F 144-159 常规

下表列出了某些常见的错误代码。

示例

以下是一个在启动期间发生的典型错误的示例:“TDSSNIClient 初始化失败,出现错误0x80092004,状态代码0x38。”

值0x80092004 是翻译为CRYPT_E_NOT_FOUND 的SSPI 错误代码。0x38 是内部错误代码,表示SQL Server 通信层无法初始化侦听器。该错误是SSL 在无法找到证书的情况下生成的。

禁用所有协议时返回的错误

禁用了所有协议之后,可能出现下列错误:

“错误: 17182,严重性: 16,状态: 1。”

“TDSSNIClient 初始化失败,出现错误0xd,状态代码0x4。”

∙“错误: 17182,严重性: 16,状态: 1。”

“TDSSNIClient 初始化失败,出现错误0xd,状态代码0x1。”

∙“错误: 17826,严重性: 18,状态: 3。”

“由于网络库中存在内部错误,所以无法启动网络库。若要确定原因,请查看错误日志中紧位于此错误之前的那些错误。”

∙“错误: 17120,严重性: 16,状态: 1。”

“SQL Server 无法生成FRunCM 线程。请查看SQL Server 错误日志和Windows 事件日志,以获取有关可能发生的相关问题的信息。”

相关文档
最新文档