Active Directory的脫機碎片整理,Active Directory系列之七

Active Directory的脫機碎片整理

Active Directory是一個被設計用於查詢的非關係型數據庫,Active Directory使用一段時間後,需要對數據庫內容進行維護,以減少數據碎片及提高查詢效率,今天我們就爲大家介紹一下如何對Active Directory的數據庫進行離線維護。
Active Directory創建時默認的數據庫及事務日誌的存放路徑是C:\Windows\NTDS,我們打開前文中創建的域控制器Florence,定位到C:\Windows\NTDS目錄下,先來了解一下下圖中各文件的作用。其中的NTDS.DITActive Directory的數據庫文件,EDB.LOG是事務日誌文件,事務日誌文件記錄了數據庫內容的變更,非常重要。默認的事務日誌文件大小隻有10M,如果事務日誌文件已經記錄滿了,系統就會自動地生成edb00001.log用以繼續存儲事務日誌,如果edb00001.log也存滿了,就會接下來生成edb00002.log,以此類推。順便提一下,在生產環境下,我們應該把數據庫文件和事務文件分開存儲,這樣既可以提高性能,也可以增加數據安全性,但Win2003要求Active Directory的數據庫和事務日誌都存儲在同一個硬盤上,不像Win2000Active Directory的數據庫和事務日誌可以存儲在不同的硬盤上。
EDB.CHK是事務日誌的檢查點文件,記錄了硬盤上的Active Directory和內存中Active Directory在內容上的差異,一般此文件用於Active Directory的初始化或還原。RES1.LOGRES2.LOG是系統保留的事務日誌文件,這兩個文件一共佔用了20M空間,主要目的就是爲了給Active Directory的事務日誌預留20M空間,避免當硬盤空間用光後無法正常關機。

 

Active Directory使用一段時間後,會產生數據碎片,表現爲Active Directory佔用的空間增大,響應速度降低,這時就需要對Active Directory做一些碎片整理了。Active Directory的碎片整理分爲在線和離線兩部分,默認情況下在線整理會12小時進行一次。在線整理的好處是在數據庫維護的過程中不需要關閉Active Directory,用戶不會受到影響;缺點是在線整理只能在已分配的數據庫空間內進行碎片整理,無法減少數據庫佔用的空間。如果Active Directory的規模不大,數據變更不頻繁,我們使用默認的在線整理也就可以了。如果Active Directory的數據庫很大,達到上G的規模,而且數據頻繁更改,這時我們就要使用今天提到的離線維護了。離線維護需要對Active Directory進行脫機處理,然後再進行Active Directory的碎片整理,這個過程中Active Directory無法使用,基於AD的業務系統會受到影響,因此建議在工作空閒時間例如晚上進行。Active Directory進行脫機碎片處理後,可以有效地減少Active Directory數據庫的大小,提高查詢速度,有的單位經過第Active Directory進行脫機碎片處理後,可以把Active Directory的大小從11G降爲6G!因此對Active Directory更新頻繁,而且Active Directory內包含海量數據的單位來說,離線維護還是很有必要做的。
如何才能對Active Directory進行離線的脫機碎片整理呢?我們以域控制器Florence舉例爲大家演示應該如何操作,首先我們在Florence上要進入目錄服務還原模式,在這個模式下,Active Directory將被脫機掛起,然後我們就可以對離線的Active Directory數據庫進行處理了。如下圖所示,我們重啓Florence,然後在自檢結束後按F8鍵選擇進入“目錄服務還原模式”。
 

 

進入目錄服務恢復模式後,我們輸入命令 NTDSUTIL,如下圖所示,我們將使用NTDSUTILActive Directory進行碎片整理。
 

 

如下圖所示,我們在NTDSUTIL中輸入Files
 

 

如下所示,我們輸入Compact To C:\,意思是對Active Directory數據庫清理碎片後壓縮到C盤的根目錄下,這樣我們將在C盤的根目錄下得到一個消除了Active Directory碎片的Ntds.dit
 

 

如下圖所示,大家可以發現真正壓縮Active Directory的是esentutl.exe,這個工具大家以後也會經常使用,而且大家會在Exchange中發現有類似的工具,這主要是因爲Active DirectoryExchangeWINS等服務器都使用了類似的非關係型數據庫引擎。
 

 

如下圖所示,壓縮成功後我們用新的ntds.dit覆蓋了原來的Active Directory數據庫文件,同時刪除了原有的日誌文件,但仍然保留edb.chk文件。
 

 

如下圖所示,這就是我們進行碎片整理後的Active Directory文件,如果在一個大型網絡中,經過這種離線整理後可以很明顯地看出對磁盤空間的釋放。
 

 

Active Directory進行脫機碎片處理只能在單臺域控制器上分別進行,對Active Directory壓縮不會影響Active Directory現有數據,也不會影響Active Directory的複製。

本文出自 “嶽雷的微軟網絡課堂” 博客,請務必保留此出處http://yuelei.blog.51cto.com/202879/123829

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章