Управление перемещением локальных почтовых ящиков в Exchange Server

В Exchange Server основные почтовые ящики и архивные почтовые ящики пользователей могут находиться в разных базах данных. Запрос на перемещение — это процесс перемещения почтового ящика из одной базы данных почтовых ящиков в другую. Локальный запрос на перемещение — это перемещение почтового ящика, которое происходит в пределах одного леса Active Directory (в отличие от запроса на удаленное перемещение, выполняемого между лесами Active Directory). С помощью процедур, описанных в этой статье, вы можете отправлять локальные запросы на перемещение основных и/или архивных почтовых ящиков. С помощью запроса на перемещение вы можете переместить основной почтовый ящик и связанный с ним архив в одну или разные базы данных.

Следующие компоненты обрабатывают запрос на перемещение почтовых ящиков:

  • Служба репликации почтовых ящиков Microsoft Exchange (MRS)
  • Прокси-сервер службы репликации почтовых ящиков (прокси-сервер MRS)

Процедуры, описанные в этой статье, помогут вам переместить локальные почтовые ящики. Вы можете использовать командную консоль Exchange и Центр администрирования Exchange (EAC) для перемещения почтовых ящиков в локальной организации.

Дополнительные сведения о перемещении почтовых ящиков и прокси-сервере MRS см. в разделе Перемещение почтовых ящиков в Exchange Server.

Что нужно знать перед началом работы

Совет

Возникли проблемы? Обратитесь за помощью к участникам форумов Exchange. Посетите форумы по адресу: Exchange Server, Exchange Online или Exchange Online Protection.

Создание локальных запросов на перемещение

Вы можете создавать локальные запросы на перемещение:

  • одного почтового ящика;

  • нескольких почтовых ящиков (такие запросы называются пакетными запросами на перемещение);

  • Несколько почтовых ящиков, указанных в файле с разделиющими запятыми (CSV) (также известный как пакет миграции).

При создании локальных запросов на перемещение в Центре администрирования Exchange (для одного или нескольких почтовых ящиков либо по CSV-файлу), запрос виден командлету Get-MigrationBatch в Командная консоль Exchange. После выполнения запроса (автоматически или вручную), результаты для каждого почтового ящика будут видны командлету Get-MoveRequest.

При создании локальных запросов на перемещение в Командная консоль Exchange для пакетов миграции используется только командлет New-MigrationBatch (почтовые ящики указаны в CSV-файле). Чтобы создать локальные запросы на перемещение, которые не используют CSV-файл (отдельные почтовые ящики или запросы на пакетное перемещение), необходимо использовать командлет New-MoveRequest , и эти запросы не отображаются в пакетном командлете Get-MigrationBatch (или связанных командлетах *-MigrationBatch* ).

Создание локального запроса на перемещение с помощью Центра администрирования Exchange

  1. В EAC перейдите в разделМиграция>получателей>, щелкните значок Добавить, а затем выберите Переместить в другую базу данных.

  2. Откроется мастер локального перемещения почтовых ящиков. На странице Выбор пользователей настройте один из указанных ниже параметров.

    • Выберите пользователей, которые нужно переместить. Выберите одного или нескольких пользователей:

      Примечание. Даже если вам нужно переместить только архивный почтовый ящик пользователя, необходимо выбрать его основной почтовый ящик.

      • Щелкните Добавитьзначок добавления. В появившемся диалоговом окне Выбор почтового ящика выберите один или несколько почтовых ящиков. После этого нажмите кнопку ОК.

      • Чтобы удалить почтовые ящики из списка, выберите почтовый ящик и нажмите кнопку Удалитьзначок удаления.

    • Укажите пользователей с ПОМОЩЬЮ CSV-файла. Нажмите кнопку Обзор и перейдите к расположению файла с разделителями-запятыми (CSV), в котором указываются перемещаемые почтовые ящики. Дополнительные сведения о требованиях к CSV-файлам для локальных запросов на перемещение см. в статье CSV Files for Mailbox Migration.

    • Разрешить неизвестные столбцы в CSV-файле:

      • Если этот флажок не установлен, то при перемещении будут игнорироваться (пропускаться без уведомления) неизвестные столбцы CSV-файла (включая необязательные столбцы, в заголовках которых допущены ошибки). Все неизвестные столбцы считаются дополнительными столбцами, которые не используются.

      • Если этот флажок установлен, миграция не выполняется, если в CSV-файле есть неизвестные столбцы. Этот параметр обеспечивает защиту от ошибок правописания в заголовках обязательных и необязательных столбцов, но CSV-файл не может содержать несвязанные столбцы.

    По завершении нажмите кнопку Далее.

  3. На странице Конфигурация перемещения настройте указанные ниже параметры.

    • Новое имя пакета миграции. Введите описательное имя для операции перемещения почтового ящика.

    • Архивировать: выберите один из следующих параметров:

      • Переместить основной и архивный почтовые ящики (в случае наличия)

      • Переместить только основной почтовый ящик, не перемещать архивный почтовый ящик

      • Переместить только архивный почтовый ящик, не перемещать основной почтовый ящик

    • Целевая база данных. Этот параметр влияет на перемещение почтовых ящиков-получателей.

      • Чтобы указать базу данных для основного почтового ящика, нажмите кнопку Обзор. Выберите базу данных в открывшемся диалоговом окне Выбор базы данных почтовых ящиков.

      • Если база данных не указана, логика автоматического распределения в Exchange выберет произвольную базу данных на сайте Active Directory.

    • Целевая архивная база данных. Этот параметр влияет на перемещение архивных почтовых ящиков.

      • Чтобы указать базу данных для архивного почтового ящика, нажмите кнопку Обзор. Выберите базу данных в открывшемся диалоговом окне Выбор базы данных почтовых ящиков.

      • Если база данных не указана, архивный почтовый ящик перемещается в то же расположение, что и основной.

    • Ограничение на недопустимые элементы. Указывает максимальное число поврежденных элементов, разрешенных в почтовом ящике до сбоя запроса. Значение по умолчанию в EAC — 10. Не указывайте здесь значение больше 50. Если вы хотите установить ограничение в 51 или выше, используйте параметр BadItemLimit и параметр AcceptLargeDataLoss в командной консоли Exchange.

    По завершении нажмите кнопку Далее.

  4. На странице Запуск обработки пакета настройте указанные ниже параметры.

    • После завершения пакета отчет будет отправлен следующим получателям. По умолчанию используется учетная запись, используемая для перемещения почтовых ящиков. Нажмите кнопку Обзор, чтобы добавить или удалить получателей. После этого нажмите кнопку ОК.

    • Выберите предпочтительный вариант для запуска пакета. Выберите один из следующих параметров:

    • Запустить обработку пакета вручную позже

    • Автоматически запустить пакет. Это значение по умолчанию.

    • Выберите предпочтительный вариант для завершения пакета. Выберите один из следующих параметров:

    • Завершить обработку пакета вручную

    • Автоматическое завершение пакета миграции. Это значение по умолчанию.

    По завершении нажмите кнопку Создать.

Создание локального запроса на перемещение одного или нескольких почтовых ящиков с помощью командной консоли Exchange

В локальном запросе на перемещение отдельного почтового ящика используется командлет New-MailboxMove. Однако в локальном запросе на перемещение нескольких почтовых ящиков, указанных не с помощью CSV-файла, также используется командлет New-MailboxMove. Локальный запрос на перемещение нескольких почтовых ящиков без использования CSV-файла также называется пакетным запросом на перемещение.

Чтобы создать локальный запрос на перемещение отдельного почтового ящика, используйте следующий синтаксис:

New-MoveRequest "<DescriptiveName>"] -Identity <MailboxIdentity> [<-ArchiveOnly | -PrimaryOnly>] [-TargetDatabase <DatabaseIdentity>] [-ArchiveTargetDatabase<DatabaseIdentity>] [-Priority <PriorityValue>] [-BadItemLimit <Value>] [-AcceptLargeDataLoss]

В этом примере создается локальный запрос на перемещение со следующими параметрами:

  • Почтовый ящик: основной почтовый ящик и архивный почтовый ящик (если он существует) для Анжелы Грубер (agruber@contoso.com). Если вы хотите переместить только основной почтовый ящик, используйте параметр PrimaryOnly . Если вы хотите переместить только архивный почтовый ящик, используйте параметр ArchiveOnly .

  • Целевая база данных для основного почтового ящика: MBX DB02. Если мы не используем параметр TargetDatabase , логика автоматического распространения в Exchange случайным образом выберет базу данных на сайте Active Directory.

  • Целевая база данных для архивного почтового ящика: MBX DB03. Если не использовать параметр ArchiveTargetDatabase или параметр PrimaryOnly , база данных архивного почтового ящика будет перемещена в ту же базу данных, что и основной почтовый ящик.

    Если мы используем параметр ArchiveOnly без параметра ArchiveTargetDatabase , логика автоматического распространения в Exchange случайным образом выберет базу данных на сайте Active Directory.

  • Priority: Normal, так как мы не используем параметр Priority .

  • Ограничение на недопустимый элемент: 10 (значение по умолчанию в командной консоли Exchange равно 0). Так как значение меньше 51, нам не нужно использовать AcceptLargeDataLoss параметр .

New-MoveRequest -Identity agruber@contoso.com -TargetDatabase "MBX 02" -ArchiveTargetDatabase "MBX 03" -BadItemLimit 10

В этом примере используются похожие параметры, но перемещается только основной почтовый ящик пользователя.

New-MoveRequest -Identity agruber@contoso.com -PrimaryOnly -TargetDatabase "MBX 02" -BadItemLimit 10

В этом примере используются похожие параметры, но перемещается только архивный почтовый ящик пользователя.

New-MoveRequest -Identity agruber@contoso.com -ArchiveOnly -ArchiveTargetDatabase "MBX 03" -BadItemLimit 10

Подробные сведения о синтаксисе и параметрах см. в статье New-MoveRequest.

Как правило, для пакетного запроса на перемещение используется практически такой же синтаксис, как для запроса на перемещение одного почтового ящика. Основные отличия:

  • Параметр Identity не используется для указания почтового ящика. Вместо этого используется командлет Get-Mailbox или Get-User, чтобы создать список перемещаемых почтовых ящиков, а результаты отправляются в командлет New-MoveRequest.

  • Присвойтие пакету имя перемещения с помощью параметра BatchName .

В этом примере создается пакетный запрос на перемещение со следующими параметрами:

  • Почтовые ящики для перемещения: все почтовые ящики в базе данных с именем MBX DB01.

  • Имя пакета: MBX DB01 — MBX DB02.

  • Целевая база данных: MBX DB02. Если бы мы не использовали параметр TargetDatabase , логика автоматического распределения в Exchange случайным образом выбирает базы данных на сайте Active Directory.

  • Целевая база данных для архивных почтовых ящиков: MBX DB02. Так как мы не используем параметр ArchiveTargetDatabase или параметр PrimaryOnly , база данных архивного почтового ящика перемещается в ту же базу данных, что и основной почтовый ящик.

    Если мы используем параметр ArchiveOnly без параметра ArchiveTargetDatabase , логика автоматического распространения в Exchange будет случайным образом выбирать базы данных на сайте Active Directory.

  • Приоритет: High

  • Ограничение на недопустимый элемент: 51 (значение по умолчанию в командной консоли Exchange равно 0), поэтому необходимо также использовать параметр AcceptLargeDataLoss .

Get-Mailbox -Database "MBX DB01" | New-MoveRequest -BatchName "MBX DB01 to MBX DB02" -TargetDatabase "MBX DB02" -Priority High -BadItemLimit 51 -AcceptLargeDataLoss

Подробные сведения о синтаксисе и параметрах см. в разделе New-MoveRequest.

Создание локального запроса на перемещение из CSV-файла с помощью командной консоли Exchange

Локальный запрос на перемещение почтовых ящиков, указанных в CSV-файле, называется пакетом миграции и использует командлет New-MigrationBatch .

Дополнительные сведения о требованиях к CSV-файлам для локальных запросов на перемещение см. в статье CSV Files for Mailbox Migration.

Примечание.

Все почтовые ящики, указанные в CSV-файле, будут перенесены, даже если они находятся за пределами области RBAC (например, подразделения), что дает администратору разрешения на перенос почтовых ящиков.

Чтобы создать пакет миграции, используйте следующий синтаксис:

New-MigrationBatch -Local [-AutoStart] [-AutoComplete] -Name "<MigrationBatchName>" -CSVData ([System.IO.File]::ReadAllBytes('<PathAndFileName>')) [<-ArchiveOnly | -PrimaryOnly>] [-TargetDatabases "<MailboxDatabase1>","<MailboxDatabase1>"... [-TargetArchiveDatabases "<MailboxDatabase1>","<MailboxDatabase1>"...] [-Priority <PriorityValue>] [-BadItemLimit <Value>] [-AcceptLargeDataLoss]

В этом примере создается пакет миграции со следующими параметрами:

  • CSV-файл, указывающий перемещаемые почтовые ящики: C:\Users\Administrator\Desktop\LocalMove 01.csv. Если вы хотите переместить только основной почтовый ящик, используйте параметр PrimaryOnly или значение PrimaryOnlyMailboxType в CSV-файле. Если вы хотите переместить только архивный почтовый ящик, используйте параметр ArchiveOnly или значение ArchiveOnlyMailboxType в CSV-файле.

  • Имя пакета: LocalMove 01.

  • Целевая база данных: MBX DB02. Если мы не используем параметр TargetDatabase , а базы данных-получатели почтовых ящиков не указаны в CSV-файле, логика автоматического распределения в Exchange случайным образом выбирает базы данных на сайте Active Directory.

  • Целевая база данных для архивных почтовых ящиков: MBX DB02. Так как мы не используем параметр ArchiveTargetDatabase (в команде или CSV-файле), база данных архивного почтового ящика перемещается в ту же базу данных, что и основной почтовый ящик.

    Если мы используем параметр ArchiveOnly (в команде или CSV-файле) без использования параметра ArchiveTargetDatabase (в команде или CSV-файле), логика автоматического распространения в Exchange будет случайным образом выбирать базы данных на сайте Active Directory.

  • Когда следует начать миграцию: немедленно, так как мы используем параметр автозапуска . Если этот параметр не используется, необходимо использовать командлет Start-MigrationBatch , чтобы запустить пакет миграции после его создания.

  • Когда следует завершить миграцию: после завершения начальной синхронизации почтовых ящиков, так как мы используем параметр Автозаполнения . Если этот параметр не используется, необходимо использовать командлет Complete-MigrationBatch , чтобы запустить пакет миграции после его создания.

  • Priority: Normal, так как мы не используем параметр Priority .

  • Ограничение на недопустимый элемент: 10 (значение по умолчанию в командной консоли Exchange равно 0). Так как значение меньше 51, нам не нужно использовать AcceptLargeDataLoss параметр .

New-MigrationBatch -Local -AutoStart -AutoComplete -Name "LocalMove 01" -CSVData ([System.IO.File]::ReadAllBytes("C:\Users\Administrator\Desktop\LocalMove 01.csv")) -TargetDatabases "MBX DB02" -BadItemLimit 10

Как проверить, все ли получилось?

Чтобы убедиться, что локальный запрос на перемещение успешно создан, выполните одно из указанных ниже действий.

  • В EAC перейдите в раздел Миграция получателей> и проверьте состояние запроса на перемещение (обратите внимание, что может потребоваться нажать кнопку Обновить значок обновления). Вы можете выбрать запрос на перемещение и просмотреть дополнительные сведения в области сведений или щелкнув значок Изменить.

  • В EAC перейдите в раздел Миграция получателей> и щелкните Состояние для всех пакетов.

  • Проверьте текст уведомления. Отправитель — Microsoft Outlook. По завершении запроса на перемещение вы получите сообщение с темой Migration batch <MigrationBatchName> has completed successfully.

  • В Центре администрирования Майкрософт щелкните значок Уведомления средства просмотра уведомлений. Чтобы просмотреть состояние запроса.

  • В командной консоли Exchange замените< MailboxIdentity> именем, адресом электронной почты или псевдонимом почтового ящика и выполните следующую команду, чтобы проверить основные значения свойств:

    Get-MoveRequest -Identity <MailboxIdentity> | Format-List DisplayName,Alias,Status,*database*
    
  • В командной консоли Exchange замените <BatchName> значением имени пакета запроса на перемещение и выполните следующую команду, чтобы проверить основные значения свойств:

    Get-MoveRequest -BatchName <BatchName> | Format-List DisplayName,Alias,Status,*database*
    

    Примечание. Если вы создали запрос на перемещение в EAC, имя пакета будет иметь MigrationService:<BatchNameValueFromTheEAC>значение .

  • Если вы создали запрос на перемещение в EAC, замените <BatchName> указанным значением имени пакета и выполните следующую команду в командной консоли Exchange, чтобы проверить сводные сведения обо всех почтовых ящиках при перемещении:

    Get-MigrationUserStatistics -BatchId <BatchName>
    
  • Если вы создали запрос на перемещение в EAC, замените <EmailAddress адресом электронной почты> перемещенного почтового ящика и выполните следующую команду, чтобы просмотреть подробные сведения о указанном почтовом ящике:

    Get-MigrationUserStatistics -Identity <EmailAddress> | Format-List
    

Подробнее см. в разделе Get-MigrationUserStatistics.

Отображение пакетов миграции

Пример отображения пакета миграции с помощью командной консоли Exchange см. в примере 2 из статьи Get-MigrationBatch.

Создание межлесного перемещения с помощью пакетного CSV-файла

В этом примере настраивается конечная точка миграции, а затем создается межлесное перемещение — из исходного в целевой лес — с помощью CSV-файла.

New-MigrationEndpoint -Name Fabrikam -ExchangeRemote -Autodiscover -EmailAddress tonysmith@fabrikam.com -Credentials (Get-Credential fabrikam\tonysmith)
$csvData=[System.IO.File]::ReadAllBytes("C:\Users\Administrator\Desktop\batch.csv")
New-MigrationBatch -CSVData $csvData -Timezone "Pacific Standard Time" -Name FabrikamMerger -SourceEndpoint Fabrikam -TargetDeliveryDomain "mail.contoso.com"

Дополнительные сведения о подготовке леса к межлесному перемещению см. в следующих разделах.

Подробные сведения о синтаксисе и параметрах см. в разделах New-MigrationBatch и New-MoveRequest.

Как проверить, все ли получилось?

Чтобы убедиться, что вы успешно завершили миграцию, выполните следующие действия.

  • В командной консоли Exchange выполните приведенную ниже команду, чтобы получить сведения о перемещении почтовых ящиков.

    Get-MigrationUserStatistics -Identity BatchName -Status | Format-List
    

Подробнее см. в разделе Get-MigrationUserStatistics.