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

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
简介:

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

clipboard[4]

错误信息如下所示:

View Code

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

Code Snippet
  1. SELECT SERVERPROPERTY('productversion')   AS ProductVersion ,
  2.  
  3.            SERVERPROPERTY('productlevel')  AS ProductLevel  ,
  4.  
  5.            SERVERPROPERTY('edition')       AS Edition
  6.  
  7.  
  8.    ProductVersion            ProductLevel            Edition
  9. ---------------------------------------------------------------------
  10.     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 的安全修补程序

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

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

 

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
相关文章
|
4月前
|
SQL Oracle 关系型数据库
选择适合您网站的 SQL 托管:MS SQL Server、Oracle、MySQL 和 MS Ac
如果您希望您的网站能够存储和检索数据,您的Web服务器应该能够访问使用SQL语言的数据库系统。以下是一些常见的SQL托管选项:
51 1
|
4月前
|
SQL Oracle 关系型数据库
选择适合您网站的 SQL 托管:MS SQL Server、Oracle、MySQL
如果您希望您的网站能够存储和检索数据,您的Web服务器应该能够访问使用SQL语言的数据库系统。以下是一些常见的SQL托管选项:
56 2
|
9月前
|
SQL 网络协议 Ubuntu
Docker安装MS SQL Server并使用Navicat远程连接
Docker安装MS SQL Server并使用Navicat远程连接
172 0
|
SQL 前端开发 Windows
SQL Sever2012安装错误——Windows Installer错误消息:打开安装日志文件的错误的原因及解决方案
由于要对着错误信息来解决,所以此处是用手机拍摄的,如果看不清楚可以看下面的文字版;此处的错误是在安装程序支持规则中爆出的
398 0
SQL Sever2012安装错误——Windows Installer错误消息:打开安装日志文件的错误的原因及解决方案
Java程序员最容易犯的十大SQL错误,你犯过几次?
前言 Java程序员编程时需要混合面向对象思维和一般命令式编程的方法,能否完美地将两者结合起来完全得依靠编程人员的水准: 技能:任何人都能容易学会命令式编程 模式:有些人用“模式-模式”,举个例子,模式可以应用到任何地方,而且都可以归为某一类模式 心境:首先,要写个好的面向对象程序是比命令式程序难得多,你得花费一些功夫 但当Java程序员写SQL语句时,一切都不一样了。SQL是说明性语言而非面向对象或是命令式编程语言。在SQL中要写个查询语句是很简单的。但在Java里类似的语句却不容易,因为程序员不仅要反复考虑编程范式,而且也要考虑算法的问题。 下面是Java程序员在写SQL时常犯的10个错误
查看MS SQL最耗时间资源的SQL
查看MS SQL最耗时间资源的SQL
|
SQL 安全 数据库
sqli笔记-基于错误的SQL注入与WAF绕过
正文 测试的是登陆功能,此功能会向数据库发送查询的请求,这里我们仔细来看一下,获取我的数据并通过 POST 请求发送。 工具使用的是Burp Suite,这里拦截了请求并将其发送到repeater:
262 0
sqli笔记-基于错误的SQL注入与WAF绕过
|
SQL Java 数据库连接
MyBatis动态SQL的List传值错误
MyBatis动态SQL的List传值错误
119 0
|
SQL Oracle 关系型数据库
【数据库】解决 oracle: SQL 错误 [900] [42000]: ORA-00900: 无效 SQL 语句
【数据库】解决 oracle: SQL 错误 [900] [42000]: ORA-00900: 无效 SQL 语句
1925 0
【数据库】解决 oracle: SQL 错误 [900] [42000]: ORA-00900: 无效 SQL 语句
|
SQL 运维 监控
使用 WGCLOUD 监测SQL Server数据库状态
WGCLOUD是一款高效轻量的运维平台,它可以监测各种数据库的运行状态,如果出现连不上的情况,也会及时告警,比如SQL Server,我们就看下它怎么监控SQL Server数据库,非常简单
使用 WGCLOUD 监测SQL Server数据库状态