如何使用 Active Directory 的联机 dbdump 功能
本文介绍如何使用 Active Directory 的联机 dbdump 功能。
适用于: Windows Server 2012 R2
原始 KB 编号: 315098
摘要
可以使用 Ldp.exe 中的联机 dbdump 功能查看域控制器运行时存储在数据库中的值。 通过修改 rootDSA 上的 dumpDatabase 属性来触发联机 dbdump 功能。
为此属性指定的值是要转储的默认属性以外的属性。 指定的值是此属性的名称。 dumpDatabase 功能首先检查是否有足够的权限转储数据库。 然后,它将数据库转储到 Ntds.dmp 文件中。 Ntds.dmp 文件与数据库文件 (.dit) 位于同一文件夹中。 默认属性为:
- Dnt
- PDNT
- Obj
- RDNTyp
- Cnt
- ABCNT
- DelTime
- NCDNT
- ABVis
使用示例:调查与 CNF 冲突或删除的 DEL 属性的 SPN 问题
若要创建 Ntds.dmp 文件,请执行以下步骤:
在记录 NTDS 事件 1645 的域控制器上启动 Ldp.exe。
在本地连接,然后以企业管理员身份绑定。
单击“浏览”菜单上的“修改”。
编辑属性:dumpdatabase。
“ 值”的编辑:name ncname objectclass objectguid instancetype。 必须在属性之间保留一个空格。
单击 Enter。 “ 条目列表 ”框包含以下条目:
[添加]dumpdatabase: name ncname objectclass objectguid instancetype单击“ 扩展”和“运行” 选项。
%systemroot%\NTDS\Ntds.dmp 文件已创建,或者在必须调查 Ldp.exe 收到错误消息。
还可以通过使用 LDIFDE 导入文件来触发此 dump-db.txt,例如:
Dn:
更改类型:修改
添加:dumpdatabase
Dumpdatabase:name ncname objectclass objectguid instancetype
-
若要使用 LDIFDE 导入文件,请使用命令行,例如 ldifde /s \<targetserver> /i /f dump-db.txt
。
使用输出
Ntds.dmp文件是文本文件。 查找在事件 1645 中报告的冲突或删除的 GUID,以查看内部引用不匹配。
示例转储文件
以下示例显示域 PDT 的 CROSSREF 对象指向已删除的错误对象:
3953 2326 true 3 1 0 - 1163 - 4
3947 196619 56.6E.52.8A.2E.B4.00.43.BE.B1.B3.57.91.AD.F5.BE PDT
...
3947 1161 false 1376281 2 0 2001-08-04 11:02.47 - -
- - - 9E.4C.AB.36.81.65.2B.4F.A0.31.59.D5.C2.74.68.F2 pdt
DEL:36ab4c9e-6581-4f2b-a031-59d5c27468f2
...
3958 1161 false 1376281 3 0 2001-08-04 23:02.47 - -
- - - 85.0B.3B.A1.EC.68.37.46.9E.D0.FF.F6.66.BA.FB.84 pdt
内部引用指向 3947,但它应指向 dc=pdt,dc=net 的新 3958 对象。
可以使用最新版本的 Ntdsutil.exe 工具的语义检查器解决此问题。
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈