Восстановление ящиков и отдельных писем в Exchange 2013 | Windows для системных администраторов

Восстановление ящиков и отдельных писем в Exchange 2013

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

Итак, в прошлой статье мы остановились на том, что подключили и смонтировали (перевели в режим онлайн) в отдельную базу для восстановления (Recovery mailbox database) восстановленную из бэкапа резервную копию почтовой базы Exchange 2013. Посмотреть список ящиков, которые содержатся в восстановленной почтовой базе можно с помощью командлета Powershell Get-MailboxStatistics:

Get-MailboxStatistics -Database RDB

Где RDB – имя recovery mailbox базы

Get-MailboxStatistics получить статистику о ящиках в восстановленной базе exchange 2013

Если вас интересует конкретный ящик, вывод предыдущей команды можно отфильтровать с помощью такой конструкции:

Get-MailboxStatistics -Database RDB | ?{$_.DisplayName -like 'Petrov*'}

Для восстановления ящиков в Exchange 2013 используется командлет New-MailboxRestoreRequest.

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

New-MailboxRestoreRequest –SourceDatabase RDB –SourceStoreMailbox “Petrov Ivan” –TargetMailbox ipetrov –AllowLegacyDNMismatch

В этом примере из базы RDB восстанавливается почтовый ящик с DisplayName “Petrov Ivan” в почтовый ящик с псевдонимом «ipetrov» существующей базы. По умолчанию командлет New-MailboxRestoreRequest  ищет в почтовой базе совпадающие LegacyExchangeDN либо проверяет совпадение адреса X500. Сделано это для того, чтобы администратор случайно не восстановил данные в неверное место. Если действительно нужно восстановить данные в другой ящик, нужно указывать ключ AllowLegacyDNMisMatch.

Совет. После создания запроса на восстановление ящика, запрос попадает в очередь (статус Queued).  Отследить статус выполнения запроса можно с помощью командлетов Get-MailboxRestoreRequest и Get-MailboxRestoreRequestStatistics. Формат команды такой:

Get-MailboxRestoreRequestStatistics -Identity MailboxUser\RestoreRequestName

Информация о статусе восстановления ящика в exchange 2013

Данные из восстановленного ящика можно скопировать в отдельную папку в ящике пользователя. Допустим, если нужно восстановить содержимое почтового ящика в отдельную папку «Restored Items», команда будет выглядеть так:

New-MailboxRestoreRequest –SourceDatabase RDB –SourceStoreMailbox “Petrov Ivan” –TargetMailbox ipetrov –TargetRootFolder “Restored Items” –AllowLegacyDNMismatch

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

Содержимое восстановленного ящика в отдельной папке OWA

Возможно восстановить как содержимое ящика целиком, так и отдельные папки. Восстановить папку Inbox (Входящие) можно так:

New-MailboxRestoreRequest -SourceDatabase RDB -SourceStoreMailbox "Petrov Ivan" -TargetMailbox ipetrov -IncludeFolders "#Inbox#"

Ключ -IncludeFolders принимает список папок. Имена папок нужно обрамлять тегом # (хэш). Например, так #SentItems#, #Contacts#,  #Tasks#.

Также возможно восстановить отдельное письмо или письма с определенными ключевыми словами, которые содержатся в теме (Subject) или теле (Body) письма. Например, нам нужно найти и восстановить письмо с ключевыми словами “windows server  2012” в теме и словом “MAK key” в тексте письма:

Restore-Mailbox -Identity IT-admin -RecoveryDatabase RDB -SubjectKeywords "windows server  2012" -ContentKeywords "MAK key"

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

Get-MailboxRestoreRequest -Status Completed | Remove-MailboxRestoreRequest
Еще записи по теме: Exchange
Понравилась статья? Скажи спасибо и расскажи друзьям!
Назад:
Вперед:

Комментариев: 4

Оставить комментарий
  1. Дмитрий | 29.10.2014

    Добрый день. А можно ли как-то восстановить личные контакты пользователя? К примеру, пользователь создавал множество своих личных контактов в своём почтовом ящике exchange и однажны их к примеру все или частично удалил.

    Ответить
    • itpro | 30.10.2014

      Контакты — это по сути отдельный папка в ящике Exchange, в которой хранятся контакты пользователя.
      Т.е. команда восстановления папки контактов в нашем примере может выглядеть так:
      New-MailboxRestoreRequest -SourceDatabase RDB -SourceStoreMailbox «Petrov Ivan» -TargetMailbox ipetrov -IncludeFolders «#Contacts#»

       

      Ответить
  2. alexey | 19.05.2015

    А каким образом восстановить пользователя? Т.е. если происходит не потеря бд с письмами,а потеря настроек из AD? Как бекапить?

    Ответить
    • itpro | 19.05.2015

      Из резервной копии базы Active Directory, Exchange здесь ни при чем.
      Если же пользователь AD был случайно удален, его можно восстановить из корзины Active Directory (если, конечно, она активна — http://winitpro.ru/index.php/2012/09/27/korzina-active-directory-v-windows-server-2012/)

      Ответить
Полные правила комментирования на сайте winitpro.ru. Вопросы, не связанные с содержимым статьи или ее обсуждением удаляются.

Сказать Спасибо! можно на этой странице или (еще лучше) поделиться с друзями ссылкой на понравившуюся статью в любимой социальной сети(специально для этого на сайте присуствуют кнопки популярных соц. сетей).

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)



MAXCACHE: 0.25MB/0.00123 sec