某單位的局域網用Microsoft Exchange Server 5.5英文版作為內部網信息協作平臺,以 Microsoft WINNT4.0(已裝SP6a補丁)作為操作系統。Exchange Server上存儲了每個人的個人郵箱和各個處室1998年至今的辦公信息,客戶端通過Microsoft Outlook 2000接收和查看個人郵件及公共信息。此服務器接UPS,設置為自動每天7:30AM開機,9:00PM關機。
某日,用戶報告Microsoft Outlook 2000進不去,經檢查,網絡狀況都正常,服務器上 Microsoft Exchange Directory服務及其相關的服務Microsoft Exchange Information Store, Microsoft Exchange Message Transfer Agent,Microsoft Exchange Event Service都沒有啟動。試著手工啟動這些服務,都啟動不了,報了WINNT內部錯誤。經檢查和分析,排除了事件日志滿、硬盤空間不足、權限設置改變等可能產生此故障的原因,認為可能是chsrvrDsadata下的Dir.edb數據庫不完整或碎片太多,所以決定用eseutil命令工具來修復。執行eseutil/命令后發現dir.edb數據庫是不完整的(inconsistancy),接著執行eseutil/D命令以整理數據庫碎片,但卻提示此數據庫有錯。且Microsoft Exchange Administrator管理器也無法連上 Exchange Server,因此也無法使用Directory Export導出或導入Recipient containers里的數據信息。整個Exchange Server服務完全無法使用了,而Exchange Server服務器上的數據信息對用戶單位是極其重要的,很多重要的辦公信息都在Exchange Server服務器的數據庫上。
為了修復數據庫,挽救Exchange Server服務器上保存的大量重要數據,筆者根據現場癥候仔細分析了相關的事件日志記錄,利用微軟在線知識庫查閱了大量相關資料,并請教了對Exchange Server有經驗的專家,非常謹慎地一步步實施事故障檢測和修復,經過兩天的奮斗,終于修復了Exchange Server服務,且所有的目錄和數據信息都得到完全恢復。具體修復步驟如下所述。
第一步,打開控制面板朋艮務,停止已啟動的Microsoft Exchange System Attendant服務及其相關的Exchange Server服務。
第二步,復制ExchsrvrWdbdata下的pub.edb,priv.edb,Edb*.10g,Res*.log和Edb.chk到別的地方備用(如F:Mdbdataback\)。
第三步,運行Microsoft Exchange Server 5.5光盤里的setup.exe,選擇Remove All,把 Exchange Server完全卸載掉,卸載后重新啟動計算機。
第四步,再次運行Microsoft Exchange Server 5.5光盤里的setup.exe,重裝Exchange Server,在安裝過程中設置Organization Name和Site Name名時,一定要設置成和原來一樣的名稱。安裝完后,須裝上和原來一樣的補丁程序。安裝完成后,打開控制面板/服務,查看服務,這時,與Exchange Server相關的服務(Microsoft Exchange Information Store,Microsoft Exchange Message Transfer Agent,Microsoft Exchange Event Service)都已啟動,說明Exchange Server服務器已正常安裝。
第五步,打開控制面板/服務,停止Microsoft Exchange System Attendant服務及其相關的Exchange Server服務。
第六步,把新裝的ExchsrvrMdbdata目錄下的pub.edb,priv.edb,Edb*.log,Res*.log和 Edb.chk移動到別的地方(如F:
ewmdbtemp\),把在第二步時備份的pub.edb,priv.edb, Edb*.log,Res*.log和Edb.chk文件復制到新裝的ExchsrvrMdbdata目錄下。
第七步,重新啟動計算機,打開控制面板/服務,發現Microsoft Exchange System Attendant,Microsoft Exchange Directory Services,Microsoft Exchange Message Transfer Agent服務都已啟動,但Microsoft Exchange Information Store和Microsoft Exchange Event Service服務都無法啟動。切換到MS-DOS方式下,進入ExchsrvrBin目錄后,執行Isinteg-patch命令,以在新安裝的目錄下生成惟一的GUIDs(Globally Unique Identifiers)。然后手工啟動 Microsoft Exchange Information Store和Microsoft Exchange Event Service,就可正常啟動了。至此,Exchange Server服務器的相關服務都已正常啟動了,但進入Microsoft Exchange Server Administrator管理器后,Containers里還沒有Exchange Server用戶。
第八步,運行Microsoft Exchange Server Administrator管理器,打開菜單File→New Other→Recipients Containter,重建一個和原來同樣的目錄名(Directory Name)的Recipient Containter。
第九步,選中Microsoft Exchange Server Administrator管理器窗口中左邊面板里的任一個服務對象(如Organization,Site或Configuration等),然后打開菜單File→Properties,選擇Advanced選項卡,點擊DS/IS Consistency Adjustment按鈕,選中All Inconsistencies,點擊Adjust。再查看Containers,這時所有的Exchange Server用戶都已顯示在各自相應的容器里了。
第十步,依次選中Recipients里的用戶郵箱,然后打開File→Properties,點擊Primary Windows NT Account,從Add User OR Group列表里選擇相應的Windows NT賬戶。至此, Exchange Server服務修復好了,Microsoft Exchange客戶可登錄進Exchange Server服務器并使用相應的目錄及信息服務了。
在這次的Exchange Server服務器故障修復過程中,筆者有以下幾點體會:第一,一定要做好備份,以防修復不成功時可以再恢復;第二,要充分利用事件日志的記錄以分析故障產生的可能原因,并找出解決方法;第三,要充分利用微軟公司的在線知識庫(http://support. microsoft.com/search/),搜索出和問題相關的文章,從中找出解決問題的方法。