Exchange 2010: Exclude Mailbox Database from Automatic Mailbox Provisioning

Exchange 2010 introduces a new feature that automatically load balance creation of new mailboxes across all available databases when a creation of a new mailbox account occurs. It’s no longer mandatory to specify what database mailbox should reside on as Exchange uses a mailbox provisioning agent to take the decision for you on what mailbox database the mailbox creation will be created on.

How is mailbox provisioning agent deciding?

Mailbox provisioning agent scans for all databases within the same Active Directory site when new mailbox request is created. The provisioning agent selects the database randomly for the new mailbox from the all available databases that are mounted and have database attribute “IsExcludedFromProvisioning” and “IsSuspendedFromProvisioning” set to $False . It´s important to know that mailbox provisioning agent does not take the current number of mailboxes in a database into account when it selects a target database, so let´s hope we see a more intelligent provision in the future.

To verify what mailbox databases are activated for automatic mailbox provisioning run the following EMS command:

Get-MailboxDatabase | ft Name,IsExcludedFromProvisioning,IsSuspendedFromProvisioning

In my case all mailbox databases are enabled for automatic mailbox provisioning and by default all new mailbox databases created using EMC are added to automatic mailbox provisioning.

So if you want to make life easier for admins that use EMC or EMS to create new mailbox accounts without needing actively selecting database and also have to wonder witch database they should select from a load balance scenario then disable the automatic mailbox provisioning on the mailbox databases you don’t want provisioning agent to automatically create mailboxes on and have it only enabled for databases you choose.

To disable mailbox database from the automatic mailbox provisioning you have two to archive this:

Set-MailboxDatabase –Identity ‘Database-01′ –IsExcludedFromProvisioning $True


Set-MailboxDatabase –Identity ‘Database-01′ –IsSuspendedFromProvisioning $True

To enable mailbox database with the automatic mailbox provisioning just set the option to $False

Set-MailboxDatabase –Identity ‘Database-01′ –IsExcludedFromProvisioning $False


Set-MailboxDatabase –Identity ‘Database-01′ –IsSuspendedFromProvisioning $ False

You only need to run one of those commands, “IsExcludedFromProvisioning” or “IsSuspendedFromProvisioning”. According to Microsoft the difference is:

The “IsExcludedFromProvisioning” parameter specifies that this database is permanently not considered by the mailbox provisioning load balancer. If the IsExcludedFromProvisioning parameter is enabled, new mailboxes aren’t added automatically to this database. You can manually add a mailbox if your role permits.

The “IsSuspendedFromProvisioning” parameter specifies that this database is temporarily not considered by the mailbox provisioning load balancer.

When you now run the New-Mailbox wizard you don’t need to specify the mailbox database manually but let the mailbox provisioning handle this.

This entry was posted in Exchange 2010 and tagged , , , , . Bookmark the permalink.

One Response to Exchange 2010: Exclude Mailbox Database from Automatic Mailbox Provisioning

  1. Pingback: Exchange 2010: Balancing the number of mailboxes and average size across all databases | penetrateit

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s