扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:赛迪网 83613 来源:天新网 2008年3月26日
关键字: 数据库 Mssql SQL SQL Server
像 SQL Server 这样的数据库
阻塞 I/O 是指必须进行外部干预才能完成的 I/O 请求(通常是 I/O 请求包 (IRP))。这种状况通常需要执行完整的系统重新启动或类似操作才能解决,并且强烈表明硬件有故障或者在 I/O 路径组件中存在程序错误。
SQL Server 2000 SP4 包含数据库和日志文件 I/O(读和写)逻辑以便检测延迟和阻塞状况。当 I/O 操作经过 15 秒钟或更长时间仍未完成时,SQL Server 会检测到并报告这一状况。以下消息将被记录到 SQL Server 错误日志中:
|
该消息表明,当前工作负载需求超出了 I/O 路径或当前系统配置和功能,或者 I/O 路径含有不能正常工作的软件(固件、驱动程序)或硬件组件。
所记录的错误信息提供了以下信息:
• ### occurrences — 未能在 15 秒钟以内完成读或写操作的 I/O 请求的数量。
• File information — 完整的文件名、数据库名和受影响文件的 DBID。
• File handle — 该文件的操作系统句柄。可以通过调试器和其他实用工具来使用这一信息跟踪 IRP 请求。
• Offset — 上一个阻塞或延迟 I/O 的偏移量。可以通过调试器和其他实用工具来使用这一信息跟踪 IRP 请求。(注:在记录该消息的时候,该 I/O 可能不再阻塞或延迟。)
记录与报告
I/O 的报告和记录是按照文件执行的。延迟和阻塞 I/O 请求的检测和报告是两个不同的操作。
检测(记录)是在 SQL Server 内部的两个位置处理的。第一个位置是在 I/O 实际完成的时候。如果请求花费了 15 秒钟以上,则发生记录操作。第二个位置是在延迟写入器进程执行的时候。当延迟写入器执行时,它包含新的对所有挂起的数据和日志文件 I/O 请求进行检查的操作,并且,如果已经超过了 15 秒钟的阈值,则会发生记录操作。
报告是按照不低于 5 分钟的时间间隔执行的。当对文件进行下一次 I/O 请求时,发生报告操作。如果记录操作已经发生,并且自上一次报告发生以来已经过去了 5 分钟或更长时间,则向错误日志中写入新的报告(上面显示的错误消息)。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者