Windows Server 2016

Offlinedefragmentation der Active Directory-Datenbank

| Autor: Thomas Joos

Tom's Admin Blog
Tom's Admin Blog (Bild: Tom Joos)

Bei der Active Directory-Datenbank handelt es sich, wie bei der Datenbank von Exchange, um eine Jet-basierte ESE-Datenbank. Das Active Directory wächst zwar nicht so stark an, wie die Datenbank eines Exchange-Servers, aber dennoch kann es sinnvoll sein die Active Directory-Datenbank zu defragmentieren. Vor allem in größeren Organisationen, bei denen das Active Directory durchaus mehrere Gigabyte groß werden kann, sollte zumindest jährlich eine Offlinedefragmentation durchgeführt werden. Im Rahmen einer Migration zu Windows Server 2016 kann das ebenfalls sinnvoll sein.

Bevor Sie eine Offlinedefragmentation durchführen, sollten Sie eine Sicherung des Systemstatus Ihres Active Directory durchführen. Wie bei der Offlinedefragmentation von Exchange wird zunächst die Datenbank kopiert, dann offline defragmentiert und anschließend zurückkopiert. Stellen Sie daher sicher, dass sich auf dem Datenträger, auf dem Sie die Offlinedefragmentation durchführen, genügend Speicherplatz frei ist. Um eine Offlinedefragmentation durchzuführen, gehen Sie folgendermaßen vor:

    • Starten Sie den Server im Verzeichnisdienst-Wiederherstellungsmodus
    • Öffnen Sie eine Eingabeaufforderung und starten Sie Ntdsutil.
    • Geben Sie anschließend den Befehl activate instance ntds
    • Geben Sie den Befehl files ein, um zur file maintenance zu gelangen.
    • Geben Sie den Befehl compact to <Laufwerk:\Ordner> Wählen Sie als Verzeichnis einen beliebigen Ordner auf der Festplatte aus. Ntdsutil kopiert die Datenbankdatei in diesen Ordner und defragmentiert sie.
    • Wenn keine Fehlermeldungen während der Offlinedefragmentation auftreten, können Sie die Datei dit aus dem Ordner, in welchen sie defragmentiert wurde, zurück in den Datenbankpfad der produktiven Datenbank kopieren. Diesen Vorgang führt Ntdsutil nicht automatisch aus, Sie müssen die Datei manuell kopieren. Sichern Sie die alte Version der ntds.dit aus dem produktiven Datenbankordner. Verschieben Sie die defragmentierte Datei in den produktiven Ordner der Datenbank und überschreiben Sie die alte Version.
    • Geben Sie in der file maintenance von Ntdsutil den Befehl integrity ein, um die Integrität der Datenbank festzustellen.
    • Wenn die Integrität der neuen Datenbank sichergestellt ist, können Sie den Domänencontroller ganz normal neu starten. Sollten Fehler auftreten, kopieren Sie die zuvor gesicherte Originalversion zurück und führen Sie einen erneuten Integritätstest durch. Ist der Test diesmal erfolgreich abgeschlossen, versuchen Sie erneut eine Offlinedefragmentation und starten Sie den Test erneut. Sie sollten den Domänencontroller erst in den normalen Modus starten, wenn sichergestellt ist, dass die Datenbank auch konsistent ist.

Da Active Directory als Systemdienst läuft, kann dieser für die Defragmentation auch beendet werden. In diesem Fall muss der Server nicht im Verzeichnisdienst-Wiederherstellungsmodus gestartet werden, sodass andere Dienste auf dem Server weiter von den Anwendern verwendet werden können.