摘要:修復 Exchange 2010 公用資料夾資料庫
過年前 Exchange Server 上的公用資料夾資料庫出了問題,無法裝載。
結果過年放假太開心了,把這件事給忘記了,過年後又忙著其他事情,今天看到事件檢視器才突然想起這件事情。
打開事件檢視器,可以看到錯誤訊息如下:
首先先用 eseutil /mh D:\Mailbox\Public_Folder_DB\Public_Folder_DB.edb 檢查資料庫狀態,結果發現 State 這個狀態欄位是顯示 Dirty Shutdown
所以先將檔案複製一份出來到 D:\Public_Folder_DB ,免得不小心弄壞
使用 eseutil /p D:\Public_Folder_DB\Public_Folder_DB.edb 先嘗試修復資料庫
修復完成以後,使用 eseutil /mh D:\Mailbox\Public_Folder_DB\Public_Folder_DB.edb 檢查資料庫狀態,
這時候發現 State 這個狀態欄位已經顯示成 Clean Shutdown
先嘗試要裝載公用資料夾,可是打開管理主控台,資料庫管理這邊卻看不到公用資料夾的資料庫
嘗試用指令 Mount-Database Public_Folder_DB 裝載資料庫,也是收到無法裝載的錯誤訊息。
於是接著嘗試著建立一個新的同名資料庫,卻也一直收到資料庫已存在的錯誤訊息
然後試著用指令 Remove-PublicFolderDatabase "Public_Folder_DB" 要刪除這個資料庫,卻又一直收到物件不存在的錯誤訊息。
最後乾脆打開 ADSIEdit 刪除這個資料庫的紀錄
刪除以後,先試著建立一個同名的 Public_Folder_DB 公用資料夾資料庫,但是不裝載。
終於可以在資料庫管理中看到你了。
將剛剛修復後的 Public_Folder_DB.edb 複製進這個新的 Public_Folder_DB 資料庫的存放的資料夾中,
試著裝載這個資料庫,結果發現仍然出現錯誤訊息。
下指令 Set-PublicFolderDatabase "Public_Folder_DB" -AllowFileRestore:$true ,讓 Public_Folder_DB 資料庫可以被覆寫
然後再裝載就成功了
不過其實我也有疑問,把原本的資料庫放回去然後再讓他可以被覆寫以後再掛載,這樣原本裡面的東西還在嗎? 還可以存取嗎?
目前能力有限,還不知道怎樣去驗證,不過我開啟工具箱那邊的公用資料夾管理主控台來查看的時候,看到【預設公用資料夾】裡面是空的。
但我也忘記是我之前就清空的,還是被蓋掉,還是在修復過程中消失的。
但是在【系統資料夾】那邊卻又看到有些以前建立過的一些東西,
所以到底真相是如何?哪天有得到答案的時候再來補足