When the first Exchange 2010 mailbox server is installed a new mailbox database is installed as well. This database is named “Mailbox Database…” followed by a long string of numbers (ex: Mailbox Database 0947606264). When you create a new mailbox database with your companies standard naming convention and attempt to delete the first default database you get the following error:
Microsoft Exchange Error
The mailbox database ‘Mailbox Database 0947606264’ cannot be deleted.
Mailbox Database 0947606264
This mailbox database contains one or more mailboxes, mailbox plans, archive mailboxes, or arbitration mailboxes. To get a list of all mailboxes in this database, run the command Get-Mailbox -Database <Database ID>. To get a list of all mailbox plans in this database, run the command Get-MailboxPlan. To get a list of archive mailboxes in this database, run the command Get-Mailbox -Database <Database ID> -Archive. To get a list of all arbitration mailboxes in this database, run the command Get-Mailbox -Database <Database ID> -Arbitration. To disable a non-arbitration mailbox so that you can delete the mailbox database, run the command Disable-Mailbox <Mailbox ID>. To disable an archive mailbox so you can delete the mailbox database, run the command Disable-Mailbox <Mailbox ID> -Archive. Arbitration mailboxes should be moved to another server; to do this, run the command New-MoveRequest <parameters>. If this is the last server in the organization, run the command Disable-Mailbox <Mailbox ID> -Arbitration -DisableLastArbitrationMailboxAllowed to disable the arbitration mailbox. Mailbox plans should be moved to another server; to do this, run the command Set-MailboxPlan <MailboxPlan ID> -Database <Database ID>.
Well how can this be, you’ve checked that there are no mailboxes in the database. As the error states there are some hidden “arbitration” mailboxes that exist in the database. To see these mailboxes you use the Get-MailboxDatabase cmdlet with the –Arbitration switch to see the mailboxes.
It’s easiest to run a Get-MailboxDatabase to find the exact name of the mailbox database in question.
Then copy that mailbox name into the following command:
|Get-MailboxDatabase –Database “Mailbox Database 0947606264” –Arbitration | ft –wrap –auto|
This will show the hidden arbitration mailboxes and pipe the output to a format-table, auto-size, and wrap the text to allow you to see the full mailbox name without truncating it.
Next we need to move the arbitration mailboxes to another database with the New-MoveRequest command. The easiest way to do this is the pipe the Get-Mailbox command to the New-MoveRequest using the following code.
|Get-MailboxDatabase –Database “Mailbox Database 0947606264” –Arbitration | New-MoveRequest –TargetDatabase DB01|
This command will create 3 new move requests.
You can view the completion of the move requests using the following command. Any previous moves will also appear unless they have already been clear from the Move Request Queue.
Now you are able to delete the first default Mailbox Database.