データベースを使っているシステムではデータの追加、削除を繰り返しますと断片化が発生します。Active Directoryもオブジェクトの追加と削除を繰り返すしますので同様の現象が発生します。Active Directoryは既定で12時間ごとに自動的に最適化処理が実行されます。これはオンライン最適化と呼ばれています。
ただオンライン最適化では、オブジェクトを削除した場合でもデータベースファイル自体は小さくなりません。データベースファイルをコンパクトにするには手動で最適化をする必要があります。オフライン最適化と呼ばれています。
Active Directoryのオフライン最適化 [Windows Server 2008]
1.サービスの停止
サーバーマネージャー 構成 サービスと展開して
「Active Directory Domain Services」 を停止します。
「別のサービスの停止」が表示されますので「はい」をクリックします。
別のサービスはADに依存するサービスです。
DNS Server、DFS Replication、Intersite Messaging、Kerberos Key Distribution Center
2.コマンドプロンプトで入力
>ntdsutil [ENTER] ;ntdsutilプロンプトになります。
:activate instance NTDS [ENTER] ;NTDSに設定されます。
:files [ENTER] ;File maintenanceプロンプトになります。
:
compact to d:\[任意の最適化したファイルを置く場所] [ENTER] ;容量がある場所
:quit [ENTER] ;File maintenanceプロンプトからntdsutilプロンプト
:quit [ENTER] ;ntdsutilプロンプトからプロンプトへ
:copy d:\ntds.dit
へ上書きします。
ADDBフォルダがわからない場合は、ntdsutilプロンプトで「info」と入力し情報を控えます。既定では[%SystemRoot%\NTDS]です。
3.整合性のチェック
>ntdsutil [ENTER] ;ntdsutilプロンプトになります。
:activate instance NTDS [ENTER] ;NTDSに設定されます。
:files [ENTER] ;File maintenanceプロンプトになります。
:intergrity [ENTER] ;File maintenanceプロンプト
チェックされます
:quit [ENTER] ;File maintenanceプロンプトからntdsutilプロンプト
:semantic database analysis [ENTER] ;semantic checkerプロンプト
:go fixup [ENTER] ;修正モードONです。と表示されます。
:quit [ENTER] ;semantic checkerプロンプトから抜ける
:quit [ENTER] ;ntdsutilプロンプトから抜ける
4.サービスの起動
「Active Directory Domain Services」を右クリックして開始をクリックする。
できれば再起動する。
【重要】事前にバックアップを取ってから行います。