none
Recreate MS Exchange 2003 Database RRS feed

  • 問題

  • 你好,

     

    因Server 只剩下4G空間左右, 所以一定要減少Database 的容量.

     

    本人想了個解決這問題的方法和過程, 希望你給些意見.

     

    1.) 本人想將離職同事的Email Account 和 Email box 一次過delete, 方法是從Exchange Task Wizard 或是從Active Directory Users and Computers delete 會好一點呢? 而且我知道 System 預設要等30 days 才可delete, 我可否將

    "Keep deleted items for (days) : 7" and "Keep deleted mailboxes for (days) :30"  更改0或1 day 呢?

     

    2.) 當Mailbox delete 後, 因HDD 空間不夠, 我會加一個20G HDD 後將 "bin" and "mdbdata" folder copy 到其他地方, 跟著把"bin" folder copy 到那個20G HDD 做defrag. 再Stop Smtp and POP3 service 和Dismount Mailbox. 完成後, 假設20G HDD 是E: drive, 這時在E: drive input "E:\>eseutil /d c:\progra~1\exchsrvr\mdbdata\priv1.edb", 到這裡我有個問題 : 當

    "E:\>eseutil /d c:\progra~1\exchsrvr\mdbdata\priv1.edb" 完成後, priv1.edb and priv1.stm 是不是一起做defrag, 還是之後再要input "E:\>eseutil /d c:\progra~1\exchsrvr\mdbdata\priv1.stm" 呢?

     

    3.) 以我所知理論上完成上述方法後, database 容量應會減少, 但本人也作最壞打算, 如所有Users 存在server 的email and address book... etc 都可delete的話, 我想Rebuild database, 方法是不是 Stop Smtp and POP3 service 和Dismount Mailbox 後, delete "priv1.edb" and "priv1.stm" 還是把整個 "mdbdata" folder delete後? 當再mount database 時, system 會否問是否會重新create file 呢? 就算成功create 後, 對現有的User Account 會否有影響嗎? 又是否需要重新create User Account 呢?

     

    10000000 個thanks....!

     

    Edmond.

    2008年8月4日 上午 03:55

解答

  • 您好!

     

    在正常情況下,執行脫機碎片整理不會永久地恢複大量磁盤空間。文件將很可能會重新增大到碎片整理之前的大小。

     

    Eseutil 碎片整理的工作原理

     

    在碎片整理過程中,Eseutil 將新建一個數據庫,該數據庫包含原數據庫中的所有信息。碎片整理完成後,將刪除原數據庫或將其保存到用戶指定的位置,然後將新版本重命名為原名稱。如果該工具遇到錯誤記錄,則將停止並顯示錯誤消息。

     

    執行脫機碎片整理時,Exchange 會生成一個數據庫文件的臨時副本。數據庫文件中的表將被保留並複制到臨時數據庫中,但會丟棄空頁並重建索引。因為此操作將更改數據庫中的物理頁碼,所以,不會原封不動地複制頁。頁之間的頁鏈接將全部更新,並會對數據庫中保留的所有頁進行完整性檢查。

     

    您可以通過使用/d /p參數來讓Eseutil在另外一個位置(例如其他的硬盤)上創建新的整理過的數據庫。在完成整理後,將新的數據庫文件拷貝到原來的目錄中並重命名為正確的數據庫文件名稱。

     

    有關如何對Exchange 數據庫進行脫機碎片整理的詳細信息,請參考下面的鏈接:


    How to defragment Exchange databases
    http://support.microsoft.com/kb/328804

     

    謝謝!

     

    Rock Wang 望正茂

    2008年8月6日 上午 03:22
    版主
  • 您好!

     

    無錯幾大的 HD都會有用 full的一日,所以正常我們會計劃 mailboxes, usage 和size增長來desgin用幾多日 stoarge group, database location 和 servers. 正常來常我們會設定一些 size limit 給用戶和看看hd有紙大來分配databse location和 databse的. 這樣如果計劃得好,應不會有爆HD 的情怳出現.

     

    還有你也可以考慮一些 mail archive solution.

     

     

    2008年8月11日 上午 07:32

所有回覆

  • 您好!

     

    對于第一個問題,Exchange Task Wizard 是用來刪除郵箱,而Active Directory Users and Computers不僅可以刪除用戶還能刪除郵箱。您可以將

    "Keep deleted items for (days) : 7" and "Keep deleted mailboxes for (days) :30"  設置為0或1天。

     

    對于第二個問題,要想將數據庫文件移動到其他的位置,請參考下面的鏈接:

     

    有關如何移動數據庫和日志文件的詳細信息,請您參考下面的鏈接:
    如何在 Exchange Server 2003 中移動 Exchange 數據庫和日志
    http://support.microsoft.com/kb/821915/zh-cn

    當您對數據庫運行eseutil /d 的時候,與數據庫相關的流文件也會自動進行碎片整理,這是産品設計上的原因。

    詳細的信息,請參考下面的鏈接:
    Eseutil /d Defragments the Database and the Streaming File
    http://support.microsoft.com/kb/254132/en-us

     

    對于第三個問題,雖然對 Exchange 數據庫進行脫機碎片整理能減小 Exchange 數據庫的物理大小,但是我們並不能保證一定能夠減少很多空間。根據您目前的情況,我們建議您對數據庫做一次完整的備份,然後在原來的Exchange 服務器上挂接一塊大容量的硬盤,將該數據庫文件移動到該硬盤上。

    當然,您也可以采用重新創建數據庫文件的方法來解決該問題,但是這樣的後果是,如果您的用戶沒有將郵件下載到本地的話,將無法在訪問原來的郵件。

    重建數據庫的方法有兩種,一種是新建一個新的存儲組,您需要修改原來用戶的存儲組屬性,使它指向新的存儲組。然後測試原來的用戶可以正常登錄,然後才能刪除舊的存儲組和數據庫文件。

    另外一種是將原來的數據庫卸載,然後將原來的數據庫文件(.edb和.stm),移動到其他的位置,這樣在加載該數據庫時系統因為找不到原來的數據庫,會自動創建一個新的數據庫文件,在測試原來的用戶可以正常登錄後,然後才能刪除舊的數據庫文件。

    不管采用哪種方法,在操作之前,您都需要對數據庫進行一次完整備份。

     

    謝謝!

     

    Rock Wang 望正茂

    2008年8月4日 上午 06:07
    版主
  • 您好!

     

    謝謝你的回覆, 可能你誤會了我第二個問題, 我意思不是移動Database, 只是靠那20G HDD 去做defrag, 完成後便拆掉. 因這方法我聽說可以在System HDD 空間不足的情況下, 只要將C:\>Progra~1\exchsrvr\bin copy 到其他HDD 也可替 System 做 defrag, 我只想問這方法可行嗎? 當然我也會準備多個HDD 去 Backup 現有的"bin" and "mdbdata" folder 啦!

     

    我所知defrag 的方法 :

    1.) Backup 現有的"bin" and "mdbdata" folder to other server.

    2.) install 20G new HDD.

    3.) copy "bin" folder to 20G new HDD.

    4.) Stop SMTP and POP3 service and Dismount database.

    5.) run "E:\>eseutil /d c:\progra~1\exchsrvr\mdbdata\priv1.edb" (假設new 20G HDD 是E: drive)

        and wait few hours to offline defrag complete.

    6.) mount database

    7.) power off the server and unplug the new 20G HDD.

    8.) power on server.

     

    請問以上方法可行和正確嗎?

     

    Many Thanks....

     

    Edmond.

    2008年8月4日 上午 07:41
  • 您好!

     

    在正常情況下,執行脫機碎片整理不會永久地恢複大量磁盤空間。文件將很可能會重新增大到碎片整理之前的大小。

     

    Eseutil 碎片整理的工作原理

     

    在碎片整理過程中,Eseutil 將新建一個數據庫,該數據庫包含原數據庫中的所有信息。碎片整理完成後,將刪除原數據庫或將其保存到用戶指定的位置,然後將新版本重命名為原名稱。如果該工具遇到錯誤記錄,則將停止並顯示錯誤消息。

     

    執行脫機碎片整理時,Exchange 會生成一個數據庫文件的臨時副本。數據庫文件中的表將被保留並複制到臨時數據庫中,但會丟棄空頁並重建索引。因為此操作將更改數據庫中的物理頁碼,所以,不會原封不動地複制頁。頁之間的頁鏈接將全部更新,並會對數據庫中保留的所有頁進行完整性檢查。

     

    您可以通過使用/d /p參數來讓Eseutil在另外一個位置(例如其他的硬盤)上創建新的整理過的數據庫。在完成整理後,將新的數據庫文件拷貝到原來的目錄中並重命名為正確的數據庫文件名稱。

     

    有關如何對Exchange 數據庫進行脫機碎片整理的詳細信息,請參考下面的鏈接:


    How to defragment Exchange databases
    http://support.microsoft.com/kb/328804

     

    謝謝!

     

    Rock Wang 望正茂

    2008年8月6日 上午 03:22
    版主
  • 您好!

     

    如依你所說的話, 再大的HDD 總有full 的時候, 那我起不是要相隔一段時間後就要把整個Database 重新create 是嗎?

    你曾說過只要把priv1.edb and priv1.stm delete 後, 再mount mailbox 一次, system 會問你是否重新create, 這個過程前後, 請問除了要backup priv1.edb and priv1.stm 外, 有沒有特別注意的地方呢?

     

    當create 新的priv1.edb and priv1.stm後, 是不是只要每個accounts 用outlook express login 一次就可以了嗎?

     

    Many Thanks...

     

     

    Edmond.

    2008年8月7日 上午 06:11
  • 您好!

     

    無錯幾大的 HD都會有用 full的一日,所以正常我們會計劃 mailboxes, usage 和size增長來desgin用幾多日 stoarge group, database location 和 servers. 正常來常我們會設定一些 size limit 給用戶和看看hd有紙大來分配databse location和 databse的. 這樣如果計劃得好,應不會有爆HD 的情怳出現.

     

    還有你也可以考慮一些 mail archive solution.

     

     

    2008年8月11日 上午 07:32
  • 您好!

     

    很感謝你的回覆, 請問可否回答我整個問題啊?

     

    還有我想請教如有User 的Mailbox 已store 1G 了, 如我現在set 每個Mailbox 的size limit(如: 500M).

    這樣對User 有影響嗎? Thanks...

     

    還有你要我考慮一些 mail archive solution. Users 的 mail 都是用pop3 存到users 的電腦. 請問過程如何呢?

     

    Many Thanks.

     

    Edmond.

    2008年8月11日 上午 07:45
  • 1.影響是depend on你的 mail quota setting.

    i.你可以set 當mailboxes 過了 500mb 只可以收 e-mail,不能再發出mail.直至 mailbox size細過 500mb.

    ii.你可以set當maiboxes過了500mb.不能收發mail

    iii.你可以set當 mailboxes過了500mb是沒有限制,這樣只會收到一囚 warning messages去users mailboxes

     

     

    2. Mail Archive solution是有好多,市面上有好多 archive soultion是在 server side,你可以set當一些 mail過了一些日子,就會 archive去另一spaces,users sides和現在平時看 mail沒有分別,在 outlook和owa上一樣會見到這mail的.但其實store在 exchange上只是一個 pointer. 詳情你可以看手一些mail archive solution datasheet.

    我印像最多人用都是 symantec,gfi, HP 和

     

    http://www.symantec.com/specprog/ev/en/hk/

    http://www.gfi.com/mailarchiver/?adv=69&loc=444

    http://h18006.www1.hp.com/products/software/im/governance_ediscovery/iap/index.html

    http://www.hs-soft.com/products/email-archiving/de/email-archivierung.aspx?gclid=COOu-aXgiZUCFSQtagodk2cZrQ

     

    2008年8月13日 上午 02:21
  •  

    您好!

     

    很感謝你的回覆,

     

    你曾說過只要把priv1.edb and priv1.stm delete 後, 再mount mailbox 一次, system 會問你是否重新create, 這個過程前後, 請問除了要backup priv1.edb and priv1.stm 外, 有沒有特別注意的地方呢?

     

    當create 新的priv1.edb and priv1.stm後, 是不是只要每個accounts 用outlook express login 一次就可以了嗎?

     

    Many Thanks...

     

     

    Edmond.

    2008年8月13日 上午 03:23
  •  

    您好,

     

    如你老的這樣做,你會所有 mailboxes 的 mail 刪除了. 當你用任何一種方法 connect 去 exchange ,exchange會自動create回一個empty 的 mailboxes給 users.

    2008年8月13日 下午 02:10
  • 您好,

     

    我真的感謝你的幫忙, 我就是希望得到這個答案, 因我要知道如offline defrag 和delete mailboxes 的方法不行時, 我最壞的打算是什么. 因為Users 的email 都存在users 的PC 上, 所以我不怕server 的email 被刪除. 我最擔心的只是re-create database 的過程和要留意的地方. 如果可以的話, 我真的很想你從頭至尾詳細點講述re-create database 的過程和要留意的地方.

     

    Anyway, many thanks.....

     

    Edmond.

    2008年8月14日 上午 03:01