域控制器运行速度变慢或停止响应时运行垃圾回收过程

症状

在正在运行 Windows Server 2003 和 Windows Server 2008 中,Windows Server 2008 R2 的域控制器 (DC),您可能会遇到下列症状︰

  • 服务器运行的速度比预期每隔几个小时的慢。

  • 在服务器停止响应每隔几个小时。

此问题只持续几分钟,然后消失。

注意:如果您使用性能监视器 (Perfmon.exe) 监视的域控制器,您发现 CPU 使用率和磁盘 I/O 是非常高时则会出现此问题。


注意:如果启用根据 KB314980 垃圾收集事件日志记录时,您发现垃圾收集进程运行时出现此问题。但是,逻辑删除对象不会删除。


发生此问题时,目录服务日志中添加一个或多个下列事件︰

事件类型: 错误

来源︰ NTDS ISAM

事件类别: (14)

事件 ID: 623

日期︰ < 日期 >

时间︰ < 时间 >

用户: 不适用

计算机︰ < 计算机名 >

说明︰ NTDS (432) NTDSA︰ 此实例 (0) 版本存储已达到其最大大小的 < 数量 >。很可能长时间运行的事务是导致版本存储的清理,从而导致建立的大小。更新将被拒绝,直至完全提交或回滚长时间运行的事务。

可能长时间运行的事务︰

会话 Id: < 标识 >

会话上下文︰ < 上下文 > 会话上下文 ThreadId: < 标识 > 清理︰ 1

事件类型: 错误

事件源︰ NTDS 常规

事件类别︰ 内部处理

事件 ID: 1519年

日期︰ < 日期 >

时间︰ < 时间 >

用户: NT AUTHORITY\LOCAL SERVICE

计算机︰ < 计算机名 >

说明︰ 内部错误︰ Active Directory 无法执行操作,因为数据库已耗尽版本存储。


其他数据内部 ID: 2080490

事件类型: 错误

来源︰ NTDS 复制

事件类别︰ 复制

事件 ID: 1479年

说明︰ Active Directory 无法接收从以下源域控制器的更改更新本地域控制器上的以下对象。活动目录没有足够存储要应用的更改的数据库版本。

对象︰ < 对象 DN >

对象的 GUID: < 对象 GUID >

源域控制器︰ < 基于 DC GUID 的 DNS 名称 >

用户操作

重新启动此域控制器。如果这没有解决问题,增加数据库版本存储区的大小。如果被放入大量的数值,对象或值的大小是非常大,降低将来更改的大小。

附加数据

错误值︰ 8573 数据库在版本存储之外。

原因

此问题是由于有许多不一致的对象或引用在 Active Directory 中的幻像。这些对象的DELTIME属性设置。但是,这些对象的isDeleted属性为 NULL。DELTIME属性,因为 garbagecollector 在其数据库扫描中包含这些对象。因此,不能删除这些对象。很多不一致的对象会导致版本存储空间最多使用垃圾收集过程。

逻辑删除对象在垃圾收集过程中发生此问题。垃圾回收过程中的逻辑删除清理代码将更新这些不一致的对象的 DELTIME,因为它认为这些引用幻像。在此状态下,逻辑删除清理代码将生成一个数据库事务对于这些更新和许多连续的对象。因此,该交易记录的大小超出了版本存储区的大小。

垃圾回收器将这视为致命错误并停止。需要清理任何数据库记录将不来看待,为示例逻辑删除到期的删除。过程是在下次运行垃圾回收器进行重试。因此下, 一次的尝试也可能失败。



这些不一致的对象并不容易确定,与 DELTIME 是内部数据库的列中。他们不会出现这种情况下用户界面或在数据库导出的对象。如果您怀疑您受到该问题,但您想要为正数,应用此修复程序将帮助您,我们建议您联系 Microsoft 客户技术支持,调查受影响的数据库的状态。

此外,这些事件可能会导致 bytoo 许多参考幻像。这些数据库记录是单向对象链接 (即不具有任何下列) 的占位符中的目标对象被删除并从数据库中删除该逻辑删除。但是,引用不会更改。这些引用必须被清理。通过删除属性值或更改为一个有效的对象的引用,您可以执行此操作。在此类中的一个示例属性为"秘书"特性。



Werecommend 您与 Microsoft 客户技术支持,以帮助您识别并删除这些引用幻像。

解决方案

Windows Server 2003 的热修补程序现在是可用的。如果您遇到此问题,Windows Server 2008 或 Windows Server 2008 R2 正在运行的计算机上,您可以按照替代方法部分中提供的步骤。建议您与 Microsoft 客户技术支持联系以获得进一步的帮助。

修补程序信息

可以从 Microsoft 获得受支持的修复程序。然而,此修补程序仅用于解决本文中描述的问题。此修复程序仅适用于遇到本文中描述的问题的系统。此修补程序可能会接受进一步的测试。因此,如果这个问题没有对您造成严重的影响,我们建议您等待包含此修复程序的下一个软件更新。

如果此修复程序可供下载,则在此知识库文章的顶部会出现“修补程序下载可用”部分。如果未显示此部分,请与 Microsoft 客户服务和支持部门联系以获取此修复程序。

注意:如果出现其他问题或需要任何故障诊断时,您可能需要创建单独的服务请求。对于不符合此特定的修补程序的其他支持问题和事项将照常收取费用。有关 Microsoft 客户服务和支持电话号码或创建单独的服务请求的完整列表,请访问下面的 Microsoft 网站︰

注意:"提供修补程序下载"窗体显示获取此修复程序的语言。如果看不到您的语言,则修补程序没有那种语言的版本。

系统必备组件

若要应用此修补程序,您必须运行 Windows 2003 Service Pack 2 (SP2)。另外,必须安装 Active Directory。有关如何获取 Windows Server 2003 service pack 或 Windows XP 专业 x64 版服务包的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章︰

如何获取最新的 service pack,Windows Server 2003

重启要求

应用此修补程序后,不需要重新启动计算机。

修补程序替换信息

此修补程序不替代以前发布的修补程序。

安装说明

安装此修复程序后,请按照下列步骤。

  1. 将 DC 重新启动到目录服务还原模式。

  2. 以管理员身份登录。

  3. 打开命令提示符。

  4. 在命令提示符处,键入以下命令,并每个命令之后按 enter 键︰

    ntdsutil

    语法数据库分析

    转到链接地址信息

  5. 执行该命令之后,您发现一个文件"dsdit.dmp.x"从其执行 NTDSUTIL 列出已更正的所有对象的文件夹中。"x"的语法数据库分析执行数,请检查最新的文件。

  6. 以正常模式重新启动计算机。

文件信息

此修复程序的英语 (美国) 版本将安装具有下表中列出的属性的文件。这些文件的日期和时间以协调世界时 (UTC) 列出。您的本地计算机上这些文件的日期和时间以您的本地时间加上当前夏令时 (DST) 偏差显示。此外,当您对文件执行某些操作时,日期和时间可能会更改。

Windows Server 2003 文件信息说明
  • 除了这些表中列出的文件,此修补程序还将签名相关的安全目录文件 (KB编号.cat) 安装与 Microsoft 的数字签名。

对于所有受支持的基于 x86 的 Windows Server 2003 SP2 的版本


需要更多帮助?

扩展你的技能
了解培训
抢先获得新功能
加入 Microsoft 内部人员

此信息是否有帮助?

谢谢您的反馈意见!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×