Jak wiadomo, baza danych Active Directory jest przechowywana w pliku NTDS.DIT, którego rozmiar może się różnić w zależności od kontrolera domeny. Powodem jest to, że Active Directory jest usługą katalogową z wieloma niezależnymi modelami, w której zmiana może wystąpić na dowolnym kontrolerze domeny, a wraz z upływem czasu zmiany te muszą być replikowane na innych kontrolerach domeny. I ponieważ zmiany są replikowane między kontrolerami domeny, a nie między bazami danych, co oznacza, że rozmiar plików bazy danych Active Directory na różnych kontrolerach może się różnić.
W systemach Windows 2000 i Windows Server 2003 Usługi katalogowe (DS) przeprowadzają defragmentację online co 12 godzin w ramach procesu czyszczenia pamięci. Ten typ defragmentacji przenosi tylko dane do pliku bazy danych (NTDS.DIT) i nie zmniejsza rozmiar pliku, oznacza to, że podczas działania Active Directory nie można skompresować pliku bazy danych.
Jeśli wykonasz defragmentację offline pliku NTDS.DIT na kontrolerze domeny, gdy Active Directory jest zatrzymana, rozmiar pliku NTDS.DIT można znacznie zmniejszyć.
Warto jednak zauważyć, że defragmentacja pliku NTDS.DIT absolutnie nie jest obowiązkową procedurą, ponieważ W tym czasie mechanizmy systemu Windows automatycznie zapewniają integralność i wydajność bazy danych AD, usuwając z niej usunięte obiekty, których ważność wygasła. Defragmentacja offline pliku NTDS.DIT, najprawdopodobniej nie zwiększy szybkości wykonywania żądań AD, jedynym celem defragmentacji offline bazy danych AD jest możliwość zaoszczędzenia miejsca na dysku.
Aby skompresować bazę Active Directory, musisz zatrzymać usługi domenowe Active Directory. W systemie Windows 2008 i nowszym po prostu zatrzymując ADDS (Net Stop ntds), w systemie Windows 2003 konieczne będzie zrestartowanie kontrolera domeny, a podczas rozruchu uruchom system w trybie przywracania usług katalogowych, naciskając klawisz F8 i wybierając DSRM.
Po zatrzymaniu bazy danych Active Directory można przystąpić do jej konserwacji za pomocą narzędzia NTDSUTIL (już opisałem, jak używać tego polecenia do analizy bazy danych Active Directory)
- W wierszu polecenia wpisz: ntdsutil
- To pliki
- Jeśli pojawi się komunikat o błędzie „Nie ustawiono instancji aktywnej”, wybierz instancję podstawową AD, wpisz Aktywuj instancję NTDS
- Następnie uruchom polecenie compact do c: \ compactntds
- W rezultacie rozpocznie się kompresja pliku bazy danych AD, a na ekranie pojawi się pasek postępu
- Po zakończeniu procesu kompresji pojawi się instrukcja z działaniami, które należy wykonać dalej (instrukcje zależą od konfiguracji i lokalizacji pliku NTDS.DIT)
- Skopiuj skompresowany plik NTDS.DIT do katalogu z oryginalnym plikiem NTDS.DIT, na przykład: skopiuj „c: \ compactntds \ ntds.dit” „D: \ ADDS \ ntds.dit”
- Usuń stare dzienniki z katalogu NTDS.DIT: del / q c: \ windows \ NTDS \ *. log
- Uruchom ADDS (Windows Server 2008) lub zrestartuj kontroler domeny (Windows 2003/2000), aby normalnie uruchomić kontroler domeny