While with previous versions of Exchange we always had to specify a mailbox database when we created or moved a mailbox, or mail-enabled an existing user, with Exchange 2010 we have the option of letting Exchange choose the database for us by using the new Automatic Mailbox Distribution feature.
Automatic distribution is used when we don't specify the -Database parameter in the New-Mailbox and Enable-Mailbox cmdlets or the -TargetDatabase parameter in the New-MoveRequest cmdlet.
This feature looks at all mailbox databases in the organization and then randomly chooses a database where the mailbox should be located.
By default, all online and healthy databases on Exchange 2010 servers can be chosen by this process. However, because you might have some databases that you don’t want to be selected by this feature (a journaling database, for example), you can manually exclude them. To do this, you can either permanently or temporarily exclude databases from the exclusion process with two properties available in each database:
- IsExcludedFromProvisioning: used if we want to indicate that the database should be permanently excluded from automatic mailbox distribution;
- IsSuspendedFromProvisioning: used if we want to indicate that the database should be temporarily excluded from automatic mailbox distribution.
Which one we choose is purely for our information. Setting either one to $True has the same result of excluding the database from the automatic distribution process.
Let’s say we want to permanently exclude database MDB01 from automatic distribution:
Set-MailboxDatabase MDB01 -IsExcludedFromProvisioning $True
To temporarily exclude it, we use the following cmdlet:
Set-MailboxDatabase MDB01 -IsSuspendedFromProvisioning $True
To check which databases are excluded or suspended from provisioning and which ones are not, use the following cmdlet:
Get-MailboxDatabase | FT Name, IsExcludedFromProvisioning, IsSuspendedFromProvisioning