Exchange Server のデフォルトのメールボックス データベースを管理する方法: 削除と名前変更のヒント

デフォルトの Exchange メールボックス データベースの名前を変更して移動する方法

メールボックスの役割を持つ新しいExchange Server 2019/2016/2013/2010をセットアップすると、デフォルトの場所(通常はC:\Program Files\Microsoft\Exchange Server\V15\Mailboxなど)にメールボックスデータベースが自動的に生成されます。このフォルダは目立たない場所に隠れているため、Windowsの仕様上、ダウンタイムやエラーなしでデータベースの名前を変更したり移動したりするのは非常に困難な場合があります。いずれにせよ、この操作はシステムドライブのクリーンアップに役立ちます。特に、より高速または大容量のディスクに保存したいログやデータでシステムドライブがいっぱいになっている場合は、特に効果的です。

このガイドでは、デフォルトのメールボックスデータベースの名前変更と移動を安全に行う方法を解説します。これにより、システムドライブを占有するのを防ぎ、整理された状態を維持できます。データベースをアンマウントし、ファイルを移動し、すべてをマウントし直す準備をしてください。少し緊張しますが、手順を注意深く実行すれば、スムーズに進むはずです。

Exchange管理シェル(EMS)にアクセスするか、PowerShell経由でリモート接続する必要があります。また、事前にバックアップを用意するか、ラボシステムでテストすることをお勧めします。Exchangeは、ミスを許容してくれるわけではありません。

Exchangeのデフォルトのメールボックスデータベース名とパスを修正する方法

現在のデータベース名とファイルの場所を取得する

これは、作業内容を確認するのに役立ちます。EMSで以下を実行します。

Get-MailboxDatabase -Server your-exchange-server | fl Name, EdbFilePath, LogFolderPath

このコマンドは、データベース名とそのファイルの保存場所を一覧表示します。デフォルトのデータベースがC:ドライブにある場合は、将来の容量不足を避けるために、別のディスクに移動することをお勧めします。

データベースの名前を変更する(アンマウントせずに)

正直なところ、Exchange ではマウント解除せずに名前を変更できる場合があり、これはちょっと奇妙ですが便利です。以下を使用してください。

Set-MailboxDatabase "Mailbox Database 1200388344" -Name MBX3-01

` Mailbox Database 1200388344 ` を実際のデータベース名に置き換えてください。設定によっては、これで問題なく動作します。ただし、エラーが発生する場合は、まずアンマウントする必要があるかもしれません(下記参照)。

はい、Exchange 管理センターから名前を変更することもできますが、慣れてしまえば PowerShell を使って変更する方が高速です。

注意: これらのファイルは手動で移動する必要があるため、現在のファイル パスを必ず把握しておいてください。

データベースファイルを別のディスクに移動する

もちろん、Windowsは必要以上に手間がかかるため、データベースファイルは通常システムドライブ上にあります。例えば、F:\MailboxDBなどに移動するのが賢明です。まず、データベースをアンマウントする必要があります。

Dismount-Database -Identity "Mailbox Database 1200388344"

これにより、Exchange によるファイルのロックが停止されます。この操作では、多少のダウンタイムが発生する可能性があります。

次に、ファイル エクスプローラーまたはコマンド プロンプトを使用して、.edb ファイルとログ ファイルを手動で移動します。

Move-Item "C:\Program Files\Microsoft\Exchange Server\V15\Mailbox\Mailbox Database 1200388344.edb" "F:\MailboxDB\Mailbox Database 1200388344.edb"

ログ ファイルに対しても同じ操作を行います。ログ ファイルは通常、F:\MailboxDBまたは任意のログ フォルダーに保存されます。

移動したら、データベース パスを更新します。

Move-DatabasePath "Mailbox Database 1200388344" -EdbFilePath F:\MailboxDB\Mailbox Database 1200388344.edb -LogFolderPath F:\MailboxDB\Logs

データベースがまだマウントされているか使用中であるというエラーが発生した場合は、適切にマウント解除されたかどうかを再確認してください。

最後に、元に戻します。

Mount-Database -Identity "Mailbox Database 1200388344"

これでほぼ完了です。データベースは再作成することなく移行できるので、手間が大幅に省けます。

デフォルトのメールボックス データベースの削除

データベースの交換後、最後のステップは古いデフォルトのデータベースをクリーンアップすることです。しかし、システムメールボックスや調停メールボックスが残っている可能性があるため、単純に削除することはできません。まず、すべてを移動する必要があります。

次のようにして、仲裁や管理者などのシステム メールボックスを確認します。

Get-Mailbox -Arbitration -Database "Mailbox Database 1200388344"

リストが空であれば問題ありません。ただし、特に複数のドメインを持つADフォレスト内にセットアップされている場合、これらのメールボックスが潜んでいる可能性があります(フォレスト全体の表示を有効にする必要がある場合のヒントはこちら)。

これらのメールボックスを別のデータベースに移動するには、次のコマンドを実行します。

Get-Mailbox -Arbitration -Database "Mailbox Database 1200388344" | New-MoveRequest -TargetDatabase db3-02

ユーザーメールボックスだけでなく、管理者用メールボックスや探索検索用メールボックスなどの特別なメールボックスも同様です。すべてを収集してから移動してください。

Get-Mailbox -Database "Mailbox Database 1200388344" | New-MoveRequest -TargetDatabase db3-02

他に何かおかしなシステムメールボックス(監視、監査、パブリックフォルダー)がある場合は、それらも対処が必要です。以下の手順で、これらも無効化または移動してください。

Get-Mailbox -Database "Mailbox Database 1200388344" -Monitoring | Disable-Mailbox -Confirm:$false

または、記録を残しておきたい場合は移動します。

すべてが転送されたら、古いデータベースにユーザーのメールボックスが残っていないことを確認します。

Get-Mailbox -Database "Mailbox Database 1200388344"

切断されたメールボックス(無効になっているが、まだスペースを占有しているメールボックス)も確認できます。以下の条件に該当するメールボックスを見つけます。

Get-MailboxStatistics -Database "Mailbox Database 1200388344" | Where { $_. DisconnectReason -eq "Disabled" } | ft DisplayName, Database, DisconnectDate

すべてのメールボックスが移動され、移動要求が完了したら、最後に古いデータベースを削除できます。

Remove-MailboxDatabase "Mailbox Database 1200388344"

次に、ディスクからファイルを物理的に削除してスペースを解放します。

Remove-Item -LiteralPath "C:\Program Files\Microsoft\Exchange Server\V15\Mailbox\Mailbox Database 1200388344" -Force -Recurse

これをきちんと行うことで、孤立したファイルやメールボックスが誤って放置されることがなくなります。

まとめ

デフォルトのメールボックスデータベースの移動や名前変更は、特にクリック操作に慣れている場合は簡単ではありませんが、適切な注意を払えば可能です。ファイルを移動する前にデータベースをアンマウントし、すべてのメールボックスを移動したことを必ず再確認し、完了したらすべてをマウントし直してください。少し面倒な作業になることもありますが、一度整理してしまえば、Exchangeの設定はより整理され、管理しやすくなります。

これが、誰かが苦労せずに、または少なくともストレスを少なくして Exchange サーバーをクリーンアップするのに役立つことを願います。

まとめ

  • Get-MailboxDatabaseを使用して現在のデータベース情報を確認します
  • Set-MailboxDatabaseで名前を変更する
  • Move-DatabasePathでファイルを安全に移動
  • 古いデータベースを削除する前に、すべてのメールボックスが移動されていることを確認してください。
  • Remove-MailboxDatabaseRemove-Itemを使用してデータベースとファイルを削除します。