检测和解决 SQL Server2000 SP4中问题


像 SQL Server 这样的数据库管理系统依赖于文件输入/输出操作的及时进行。有故障或配置不当的硬件、固件设置、筛选器驱动程序、压缩、程序错误以及 I/O 路径内的其他情况都可能导致阻塞或延迟 I/O 问题,并且很快对 SQL Server 性能产生消极影响。

上述问题对 SQL Server 的影响因问题细节的不同而差异很大,但它们通常导致阻塞、锁存器争用和超时、过长的响应时间以及资源的过度利用。

阻塞 I/O 是指必须进行外部干预才能完成的 I/O 请求(通常是 I/O 请求包 (IRP))。这种状况通常需要执行完整的系统重新启动或类似操作才能解决,并且强烈表明硬件有故障或者在 I/O 路径组件中存在程序错误。

延迟 I/O 是指无需干预即可完成但所花时间超过预期时间的 I/O 请求(同样,这通常是 IRP)。这种状况的原因通常是硬件配置、固件设置或筛选器驱动程序干预,需要硬件或软件供应商提供帮助以便跟踪和解决。

SQL Server 2000 SP4 包含数据库和日志文件 I/O(读和写)逻辑以便检测延迟和阻塞状况。当 I/O 操作经过 15 秒钟或更长时间仍未完成时,SQL Server 会检测到并报告这一状况。以下消息将被记录到 SQL Server 错误日志中:

2004-11-11 00:21:25.26 spid1 SQL Serverhas encountered 192 
occurrence(s) of IO requests taking longer than 15 seconds to complete 
on file [E:\SEDATA\stressdb5.ndf] in database [stressdb] (7). The OS 
file handle is 0x00000000000074D4. The offset of the latest long IO is: 
x00000000022000".

该消息表明,当前工作负载需求超出了 I/O 路径或当前系统配置和功能,或者 I/O 路径含有不能正常工作的软件(固件、驱动程序)或硬件组件。

所记录的错误信息提供了以下信息:

• ### occurrences — 未能在 15 秒钟以内完成读或写操作的 I/O 请求的数量。

• File information — 完整的文件名、数据库名和受影响文件的 DBID。

• File handle — 该文件的操作系统句柄。可以通过调试器和其他实用工具来使用这一信息跟踪 IRP 请求。

• Offset — 上一个阻塞或延迟 I/O 的偏移量。可以通过调试器和其他实用工具来使用这一信息跟踪 IRP 请求。(注:在记录该消息的时候,该 I/O 可能不再阻塞或延迟。)

  • 1
  • 2
  • 3
  • 4
  • 下一页
【内容导航】
第1页:检测和解决 SQL Server2000 SP4中问题 第2页:检测和解决 SQL Server2000 SP4中问题
第3页:检测和解决 SQL Server2000 SP4中问题 第4页:检测和解决 SQL Server2000 SP4中问题

相关内容