Home WindowsExchange Server Переместить почтовые ящики в другую базу Exchange Server 2016 через ecp и powershell

Переместить почтовые ящики в другую базу Exchange Server 2016 через ecp и powershell

by admin
771 views
Exchange

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

Перемещение почтовых ящиков Exchange через ECP

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

ИмяРазмер почтового ящикаБаза данных
Yaroslav, Bykova3,77 ГБDB04
Yaropolk, Kapustin2,84 ГБDB04
Vitaly, Kotov3,43 ГБDB04

Также есть команда которая покажет список почтовых ящиков в базе данных

[PS] C:\>get-mailbox -Database db04

Name                      Alias                ServerName       ProhibitSendQuota
----                      -----                ----------       -----------------
Emmanuel, Ulyanov         Evizint              mbx1             Unlimited
Philemon, Alexeeva        Eldis1997            mbx1             Unlimited
Inessa, Shcherbakova      Caustravers          mbx1             Unlimited
Dominica, Medvedeva       Mentumer             mbx1             Unlimited
Dorofei, Yudin            Cress1990            mbx1             Unlimited
Stella, Zubareva          Peentwer39           mbx1             Unlimited
Artem, Aliyev             Waake1979            mbx1             Unlimited
Dinar, Mironova           Trepas               mbx1             Unlimited
Anna, Repina              Fromeflow            mbx1             Unlimited
Esther, Konovalova        Firet1989            mbx1             Unlimited
Love, Tychonoff           Annot1989            mbx1             Unlimited
Patricia, Ozerova         Phyan1942            mbx1             Unlimited
Ilya, Volkov              Ficul1966            mbx1             Unlimited
Praskovya, Alexandrova    Facter               mbx1             Unlimited
Ahmed, Korovin            Painsty              mbx1             Unlimited
Ravil, Azarov             Loqued               mbx1             Unlimited
Rustam, Izmaylov          Squithrilve          mbx1             Unlimited
Rafik, Abdulov            Awask1951            mbx1             Unlimited
Simon, Vinogradoff        Ecaughty             mbx1             Unlimited
Arthur, Andreeff          Eavoldisely56        mbx1             Unlimited

Создаем пакет миграции Exchange

Нажмите Migration на вкладках. На панели инструментов щелкните значок + и выберите  Move to a different database .

Нажмите значок + , чтобы выбрать почтовые ящики, которые вы хотите переместить. После выбора почтовых ящиков подтвердите, что вы видите их в списке, и нажмите « Next» .

Дайте пакету миграции имя, например, Migration DB04 TO DB03 . Нажмите Обзор и выберите целевую базу данных, в которую вы хотите переместить этот почтовый ящик. В нашем примере это DB03.

Если в почтовых ящиках есть архив, и вы хотите перенести и их, найдите и выберите целевую архивную базу данных. Нажмите «Далее» .

Выберите почтовый ящик, который получит отчет после завершения пакета миграции. Нажмите « New» , чтобы запустить пакет миграции.

Проверить процесс перемещения почтовых ящика в новую базу данных Exchange

Сначала начнется  проверка запроса на перемещение.

Синхронизация

Проверка завершения перемещения почтового ящика через ECP

Пакет миграции завершен . В области сведений с правой стороны вы можете увидеть, перемещены ли все почтовые ящики. Если у вас уже долго висит сообщение Syncing , выполните командлет ниже, возможно миграция уже прошла , но веб интерфейс подтупливает.

Переместить почтовых ящиков через Powershell Exchange

Вы можете переместить почтовый ящик в Exchange 2010/2013/2016/2019 в другую базу данных с помощью ECP . Однако есть и другой способ PowerShell. В этом примере мы переместим почтовый ящик в другую базу данных с помощью PowerShell.

Важно: Перед перемещением почтовых ящиков запустите командлет Set-ADServerSettings , включив параметр -ViewEntireForest . Это позволит вам просматривать объекты во всем лесу.

[PS] C:\>Set-ADServerSettings -ViewEntireForest $true

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

Расположение основного почтового ящика и архивного почтового ящика находится в базе данных DB04.

[PS] C:\>Get-Mailbox "Timur.Zakharov@alukashin.ru" | Ft Name,PrimarySmtpAddress,Database,ArchiveDatabase

Name            PrimarySmtpAddress          Database ArchiveDatabase
----            ------------------          -------- ---------------
Timur, Zakharov Timur.Zakharov@alukashin.ru DB04
PS] C:\>Get-Mailbox "Timur, Zakharov" | Ft Name,PrimarySmtpAddress,Database,ArchiveDatabase

Name            PrimarySmtpAddress          Database ArchiveDatabase
----            ------------------          -------- ---------------
Timur, Zakharov Timur.Zakharov@alukashin.ru DB04

Теперь, когда мы знаем, что основной почтовый ящик и архивный почтовый ящик находятся в DB04, давайте рассмотрим следующий шаг, как переместить почтовые ящики.

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

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

[PS] C:\>New-MoveRequest "Timur.Zakharov@alukashin.ru" -TargetDatabase "DB03"

DisplayName     StatusDetail        TotalMailboxSize TotalArchiveSize PercentComplete
-----------     ------------        ---------------- ---------------- ---------------
Timur, Zakharov WaitingForJobPickup 0 B (0 bytes)                     0

Перемещение основного почтового ящика и архивного почтового ящика в разные базы данных почтовых ящиков .

[PS] C:\>New-MoveRequest "Simon.Voronoff@alukashin.ru" -TargetDatabase "DB03" -ArchiveTargetDatabase "DB01"

DisplayName     StatusDetail        TotalMailboxSize TotalArchiveSize PercentComplete
-----------     ------------        ---------------- ---------------- ---------------
Simon, Voronoff WaitingForJobPickup 0 B (0 bytes)                     0    

Переместить только почтовый ящик с помощью PowerShell

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

[PS] C:\>New-MoveRequest "Thekla.Galkina@alukashin.ru" -TargetDatabase "DB03" -PrimaryOnly

DisplayName     StatusDetail        TotalMailboxSize TotalArchiveSize PercentComplete
-----------     ------------        ---------------- ---------------- ---------------
Thekla, Galkina WaitingForJobPickup 0 B (0 bytes)                     0

Переместить только Архивный почтовый ящик с помощью PowerShell

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

[PS] C:\>New-MoveRequest "Sawa, Zaitsev" -ArchiveTargetDatabase "DB01" -ArchiveOnly

DisplayName   StatusDetail        TotalMailboxSize TotalArchiveSize        PercentComplete
-----------   ------------        ---------------- ----------------        ---------------
Sawa, Zaitsev WaitingForJobPickup 0 B (0 bytes)    96.48 KB (98,792 bytes) 0

Переместить все почтовые ящики из одной базы в другую Exchange с помощью Powershell

[PS] C:\>Get-Mailbox -Database "DB01" -ResultSize Unlimited | New-MoveRequest -TargetDatabase "DB02"

DisplayName       StatusDetail        TotalMailboxSize         TotalArchiveSize PercentComplete
-----------       ------------        ----------------         ---------------- ---------------
Administrator     WaitingForJobPickup 694.2 KB (710,903 bytes)                  0
Christopher Payne WaitingForJobPickup 805.7 KB (825,070 bytes)                  0
Mary Walsh        WaitingForJobPickup 53.4 KB (54,682 bytes)                    0
Benetiz Anees     WaitingForJobPickup 411.4 KB (421,233 bytes)                  0
Larson Tevin      WaitingForJobPickup 40.93 KB (41,913 bytes)                   0
Jake Cornish      WaitingForJobPickup 40.93 KB (41,913 bytes)                   0

Посмотреть процесс перемещения почтовых ящиков через Powershell

Запустите командлет Get -MoveRequest и Get-MoveRequestStatistics , чтобы проверить состояние перемещения почтового ящика.

[PS] C:\>Get-MoveRequest | Get-MoveRequestStatistics

DisplayName        StatusDetail TotalMailboxSize        TotalArchiveSize        PercentComplete
-----------        ------------ ----------------        ----------------        ---------------
Yaropolk, Kapustin Completed    54.57 KB (55,880 bytes)                         100
Vitaly, Kotov      Completed    53.61 KB (54,896 bytes)                         100
Sawa, Zaitsev      Completed    96.48 KB (98,792 bytes) 96.48 KB (98,792 bytes) 100
Yaroslav, Bykova   Completed    54.24 KB (55,538 bytes)                         100
Timur, Zakharov    Completed    54.07 KB (55,366 bytes)                         100
Thekla, Galkina    Completed    54.07 KB (55,366 bytes)                         100
Simon, Voronoff    Completed    54.07 KB (55,366 bytes)                         100

Повторное выполнение команды , будет работать как Refresh.

Удалить завершенный запрос на перемещение

Удалите завершенные запросы на перемещение в Exchange после завершения перемещения. Это даст вам четкое представление при следующем перемещении почтовых ящиков. Если вы хотите удалить все запросы на перемещение, выполните вторую команду.

[PS] C:\>Get-MoveRequest -MoveStatus Completed | Remove-MoveRequest -Confirm:$false

[PS] C:\>Get-MoveRequest -ResultSize Unlimited | Remove-MoveRequest -Confirm:$false

Перенос системных почтовых ящиков Arbitration Mailbox

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

[PS] C:\Windows\system32>Remove-MailboxDatabase "Mailbox Database 1387724892"
This mailbox database contains one or more mailboxes, mailbox plans, archive mailboxes, public folder mailboxes or arbitration mailboxes, Audit 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 public folder mailboxes in this database, run the command Get-Mailbox -Database <Database ID>
-PublicFolder. To get a list of all arbitration mailboxes in this database, run the command Get-Mailbox -Database <Database ID> -Arbitration. To get a list of all Audit mailboxes in this database, run the command Get-Mailbox -Database <Database ID> -AuditLog. 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. To disable a public folder mailbox so that you can delete the
mailbox database, run the command Disable-Mailbox <Mailbox ID> -PublicFolder. To disable a Audit mailbox so that you can delete the mailbox database, run the command Get-Mailbox -AuditLog | Disable-Mailbox. 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>.
    + CategoryInfo          : InvalidOperation: (Mailbox Database 1387724892:DatabaseIdParameter) [Remove-MailboxDatab
   ase], AssociatedUserMailboxExistException
    + FullyQualifiedErrorId : [Server=EXCHANGE,RequestId=fb582ab5-a5b9-4eb7-9b7e-837d15a9a9c6,TimeStamp=8/23/2017 6:15
   :08 PM] [FailureCategory=Cmdlet-AssociatedUserMailboxExistException] 4690FD5A,Microsoft.Exchange.Management.System
  ConfigurationTasks.RemoveMailboxDatabase
    + PSComputerName        : exchange.test.local

Статьи из этой категории

1 comment

Leave a Comment