MS SQL 错误 :17883,严重度: 1,状态: 0

公司一台老旧的SQL SERVER 2000 数据库,一周内会出现若干次(一次或多次)CPU 持续100%,导致应用程序没有反应的情况,如下图所示:

MS SQL  错误 :17883,严重度: 1,状态: 0

错误信息如下所示:

日期        2013/7/12 2:14:03
日志 SQL Server (存档编号6 - 2013/7/12 8:49:00) 源 server 消息
错误: 17883,严重度: 1,状态: 0 日期 2013/7/12 2:14:03
日志 SQL Server (存档编号6 - 2013/7/12 8:49:00) 源 server 消息
调度程序 2 似乎已被挂起。SPID 18,ECID 0,UMS 上下文 0x03A1B5D0。

数据库版本、补丁情况如下:

Code Snippet
  1. SELECT SERVERPROPERTY('productversion')   AS ProductVersion ,
  2. SERVERPROPERTY('productlevel')  AS ProductLevel  ,
  3. SERVERPROPERTY('edition')       AS Edition
  4. ProductVersion            ProductLevel            Edition
  5. ---------------------------------------------------------------------
  6. 8.00.760                      SP3                Enterprise Edition

查看微软官方文档,提示出错原因:检查点进程强制 SQL Server 将所有脏页都写入磁盘。支持和维护快速 I/O 速率以及不会导致 I/O 尝试被挂起的系统可以触发一种情况,由此,检查点进程便无需延迟以等待完成 I/O 进程。当检查点未能正确生成时,它会影响整个数据库活动和性能。这可能导致事务减少及批量提交速率降低。SQL Server 错误日志中可能出现以下错误消息:

错误:17883, 严重性:1, 状态: 0
调度程序 0 似乎已被挂起。SPID 7,ECID 0,UMS 上下文 0x045530B8。

解决方案:

从微软官方文档来看,这是SQL SERVER 2000的一个bug,需要打相关补丁,具体参考资料如下所示:

Service Pack 信息

要解决此问题,请获取最新的 Microsoft SQL Server 2000 Service Pack。有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

290211 (http://support.microsoft.com/kb/290211/ )

如何获取最新的 SQL Server 2000 Service Pack

安全修补程序信息

此修复程序随 Microsoft 安全公告 MS03-031 的安全修补程序一起提供。 有关如何从 Microsoft 下载中心获取此安全修补程序的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

815495 (http://support.microsoft.com/kb/815495/ )

MS03-031:SQL Server 累积安全修补程序

821277 (http://support.microsoft.com/kb/821277/ )

MS03-031:SQL Server 2000 Service Pack 3 的安全修补程序

----------------------------------------------------------------------------------------------------------------------

自从打补丁后,最近几天都没有出现这个问题了,后续需要观察一段时间,看是否还会出现此类问题,才能确定补丁是否真正解决了这个问题。

参考资料:

http://support.microsoft.com/kb/815056

http://support.microsoft.com/kb/821277

http://www.microsoft.com/zh-cn/download/details.aspx?id=18384

http://support.microsoft.com/kb/824430/zh-cn

上一篇:Android中MenuInflater实例


下一篇:统计uint64的数对应二进制数的1的个数