Applies to: Exchange Server 2010 SP3, Exchange Server 2010 SP2

Topic Last Modified: 2011-03-19

Updating, also known as seeding, is the process in which a copy of a mailbox database is added to another Mailbox server. This becomes the baseline database for the copy. Seeding is required under the following conditions:

You can perform seeding by using the following methods:

Updating a database copy can take a very long time, especially if the database being copied is very large, or if there is high network latency or low network bandwidth. Once the seeding process has started, don't close the EMC or the Shell until the process has completed. If you do, the seeding operation will be terminated.

A database copy can be seeded using either the active copy or an up-to-date passive copy as the source for the seed. When seeding from a passive copy, be aware that the seed operation will terminate with a network communication error under the following circumstances:

Multiple database copies can be seeded simultaneously. However, when seeding multiple copies simultaneously, you must seed only the database file, and omit the content index catalog. You can do this by using the DatabaseOnly parameter with the Update-MailboxDatabaseCopy cmdlet.

Note:
If you do not use the DatabaseOnly parameter when seeding multiple targets from the same source, the task will fail with SeedInProgressException error FE1C6491.

Looking for other management tasks related to mailbox database copies? Check out Managing Mailbox Database Copies.

Prerequisites

  • The mailbox database copy must be suspended. For detailed steps, see Suspend or Resume a Mailbox Database Copy.

  • The Remote Registry service must be running on the server hosting the passive database copy you're updating.

What Do You Want to Do?

Use the EMC to update a mailbox database copy

You need to be assigned permissions before you can perform this procedure. To see what permissions you need, see the"Mailbox database copies" entry in the High Availability Permissions topic.

  1. In the console tree, navigate to Organization Configuration > Mailbox.

  2. In the result pane, click the Database Management tab.

  3. In the work pane, on the Database Copies tab, right-click the database copy you want to update, and then select Update Database Copy.

  4. On the Update Database Copy page, configure the available options for updating a database copy:

    • By default, the active copy of the database is used as the source database for seeding. If you prefer to use a passive copy of the database for seeding, check the Select a source server for seeding checkbox, and then click Browse to select the server containing the passive copy you want to use for the source.

    • Configure the task's behavior if files exist in the path of the database copy being seeded. If any existing files are in the database path, you can either select Delete them and continue to update process to remove all existing files and proceed with the seeding operation, or you can select Cancel the update process to terminate the task.

    • By default, once seeding has completed, continuous replication will automatically resume for the database. If you don't want replication to automatically resume, select Leave the database copy suspended. I will manually resume replication later.

    • Optionally specify a DAG network to be used for seeding. Click Browse to select the DAG network you want to use.

  5. Once you have configured the available options, click Update to update the database copy.

  6. On the Completion page, the Summary states whether the operation was successful. The summary also displays the Shell command that was used to perform this procedure.

  7. Click Finish to exit the wizard.

Use the Shell to update a mailbox database copy

You need to be assigned permissions before you can perform this procedure. To see what permissions you need, see the"Mailbox database copies" entry in the High Availability Permissions topic.

This example shows how to seed a copy of a database named DB1 on MBX1.

Copy Code
Update-MailboxDatabaseCopy -Identity DB1\MBX1

This example shows how to seed a copy of a database named DB1 on MBX1 using MBX2 as the source Mailbox server for the seed.

Copy Code
Update-MailboxDatabaseCopy -Identity DB1\MBX1 -SourceServer MBX2

This example shows how to seed a copy of a database named DB1 on MBX1 without seeding the content index catalog.

Copy Code
Update-MailboxDatabaseCopy -Identity DB1\MBX1 -DatabaseOnly 

This example shows how to seed the content index catalog for the copy of a database named DB1 on MBX1 without seeding the database file.

Copy Code
Update-MailboxDatabaseCopy -Identity DB1\MBX1 -CatalogOnly

Manually copy an offline database

You need to be assigned permissions before you can perform this procedure. To see what permissions you need, see the"Mailbox database copies" entry in the High Availability Permissions topic.

  1. If circular logging is enabled for the database, it must be disabled before proceeding. You can disable circular logging for a mailbox database by using the Set-MailboxDatabase cmdlet, as shown in this example.

    Copy Code
    Set-MailboxDatabase DB1 -CircularLoggingEnabled $false
    
  2. Dismount the database. You can use the Dismount-Database cmdlet, as shown in this example.

    Copy Code
    Dismount-Database DB1 -Confirm $false
    
  3. Manually copy the database files (the database file and all log files) to a second location, such as an external disk drive or a network share.

  4. Mount the database. You can use the Mount-Database cmdlet, as shown in this example.

    Copy Code
    Mount-Database DB1
    
  5. On the server that will host the copy, copy the database files from the external drive or network share to the same path as the active database copy. For example, if the active copy database path is D:\DB1\DB1.edb and log file path is D:\DB1, then you would copy the database files to D:\DB1 on the server that will host the copy.

  6. Add the mailbox database copy by using the Add-MailboxDatabaseCopy cmdlet with the SeedingPostponed parameter, as shown in this example.

    Copy Code
    Add-MailboxDatabaseCopy -Identity DB1 -MailboxServer MBX3 -SeedingPostponed
    
  7. If circular logging is enabled for the database, enable it again by using the Set-MailboxDatabase cmdlet, as shown in this example.

    Copy Code
    Set-MailboxDatabase DB1 -CircularLoggingEnabled $true