久しぶりですね。。。
 なのに自分的メモを書いたりしてごめんなさい。
 今日は Exchange Server 2010 SP1 で機械を壊してしまったとき、データベースのバックアップをどのようにして新しい機械に移すかという、つまり自分的なメモです。
 1.故障した機械のデータベースフォルダへ移動、ESEUTIL を実行しデータベースをコミットする。
 ESEUTIL /R E01
 成功しない場合は以下の修復を行う。
 Eseutil /MH "XXXXXXX.edb"
Eseutil /R E01 /I /d
 それでも解決しない場合は
 Eseutil /p XXXXXXX.edb
 何度か組み合わせを変えて実行したりすると、直ったりします。
 2.新しい機械でデータベースを作成する。
 例えば、SDC_MAILBOX というDBを C:\DataBase\SDC_MAILBOX フォルダに作ります。
 New-MailboxDatabase -Name SDC_MAILBOX -Server SDC32 -EdbFilePath C:\DataBase\SDC_MAILBOX\SDC_MAILBOX.edb -LogFolderPath C:\DataBase\SDC_MAILBOX
 3.作成した新しいデータベースをリストア可能な属性にセットする。
 Set-MailboxDatabase SDC_MAILBOX -AllowFileRestore:$true
 4.作成した新しいデータベースのフォルダに、edbやlog、カタログ等をすべてコピーする。
 このとき、.edbファイルの名称を古いデータベースの名称から新しいデータベースの名称に変えるのを忘れずに。
 5.新しいデータベースをマウントする。
 Mount-Database SDC_MAILBOX
 マウントに成功すれば終わったも同然です。
 6.ユーザーアカウントのパスを新しいデータベースへ変更する。
 古いメールボックスデータベースは "Mailbox Database" とします。
 データベースが既に存在しなくともパスのみを変更しますので、元の実体DBがなくとも大丈夫です。
 Get-Mailbox -Database "Mailbox Database" |where {$_.ObjectClass -NotMatch '(SystemAttendantMailbox|ExOleDbSystemMailbox)'}| Set-Mailbox -Database SDC_MAILBOX
 これで完了です。
 壊れたという事は、間違いなくデータベースはクリーンシャットダウンしていませんので、最初に ESEUTIL が必要になります。
 ESEUTIL /R E01 などは必ず修復するターゲットの edb があるフォルダに移動して行ってください。E01 はデータベースの数に応じて、E01、E02・・・と番号が増えていますので適切に変えてください。
 以上、自分的メモでした。
 まあ、それにしても Exchange 2010 SP1 になって、やっとある程度安心して使えるようになった気がします。
 データベースのコピーを複数の Server が持つ事もできますし、以前よりずっと信頼感が増しました。
 うちの部下の信頼感もバージョンアップしてほ(ry 