headermask image

Notice: Undefined variable: t in /var/www/user97185/data/www/system-administrators.info/yandex-ad.php on line 15

Notice: Undefined variable: r in /var/www/user97185/data/www/system-administrators.info/yandex-ad.php on line 15
Рекомендую: Фриланс-биржа | Кэшбэк-сервис | Интернет-бухгалтерия

Восстановление данных с помощью базы восстановления в Exchange 2010 SP1. Часть 3

Это последняя часть серии статей по восстановлению данных в Exchange 2010 SP1. Если вы не читали первые две части, вам сюда – тыц1 и тыц2. И эта часть наиболее интересна, так как именно в ней мы подходим к сути всех наших мучений.

Поиск ящиков и выполнение простого восстановления

Теперь, когда наша база восстановления создана и смонтирована, мы можем воспользоваться командлетом Get-MailboxStatistics для просмотра какие ящики доступны для восстановления в этой базе.

Get-MailboxStatistics -Database RecoveryDB

recovery-exch10sp1-recdb-3-1

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

Get-MailboxStatistics -Database RecoveryDB | ?{$_.DisplayName -like 'Mike*'}

recovery-exch10sp1-recdb-3-2

Немного расшифруем эту команду для начинающих пользователей. Я использовал алиас ? для командлета Where-Object. Также в команде присутствует оператор -like, который фильтрует результат и выводит только почтовый ящики, начинающиеся с Mike.

Для восстановления мы будем использовать командлет New-MailboxRestoreRequest. При использовании данного командлета необходимо учитывать одну его особенность – почтовый ящик в базе восстановления должен идентифицироваться одним из трех значений: DisplayName, MailboxGUID или LegacyExchangeDN. Вы не сможете ссылаться на ящик используя псевдоним Exchange.

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

New-MailboxRestoreRequest -SourceDatabase RecoveryDB -SourceStoreMailbox 'Mike Pfeiffer' -TargetMailbox mpfeiffer

recovery-exch10sp1-recdb-3-3

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

Get-MailboxRestoreRequest | Get-MailboxRestoreRequestStatistics

recovery-exch10sp1-recdb-3-4

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

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

Get-MailboxStatistics -Database RecoveryDB | ?{$_.DisplayName -like 'Isabel*'} | fl DisplayName,MailboxGuid,DisconnectDate

recovery-exch10sp1-recdb-3-5

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

New-MailboxRestoreRequest -SourceDatabase RecoveryDB -SourceStoreMailbox 4a1d2118-b8cc-456c-9fd9-cd9af1f549d0 -TargetMailbox ihill

recovery-exch10sp1-recdb-3-6

Восстановление выборочных папок из почтового ящика

Для восстановления определенных папок, а не целого почтового ящика нам нужно использовать ключ -IncludeFolders. В данном примере мы указываем что необходимо восстанавливать только папку Inbox:

New-MailboxRestoreRequest -SourceDatabase RecoveryDB -SourceStoreMailbox administrator -TargetMailbox administrator -IncludeFolders '#Inbox#'

recovery-exch10sp1-recdb-3-7

Параметр -IncludeFolders принимает список из одной или нескольких папок почтового ящика. Вы можете указывать как стандартные папки, так и созданные вами. Обратите внимание что значение папки должно быть окружено символом #. К примеру для восстановления папки контактов нужно указать #Contacts#, или #Tasks# для восстановления задач.

Восстановление в архивный почтовый ящик

Для восстановления данных пользователей в архивный почтовый ящик необходимо использовать ключ -TargetIsArchive Далее сама команда и результат её выполнения:

New-MailboxRestoreRequest -SourceDatabase RecoveryDB -SourceStoreMailbox 'Mike Pfeiffer' -TargetMailbox mpfeiffer -TargetIsArchive

recovery-exch10sp1-recdb-3-8

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

Восстановление в альтернативный почтовый ящик

По умолчанию командлет New-MailboxRestoreRequest ищет совпадающие LegacyExchangeDN или проверяет что адрес X500 в ящике куда мы восстанавливаем данные соответствует значению LegacyExchangeDN в восстанавливаемом ящике. Это гарантирует что вы случайно не восстановите почтовый ящик в неверное место. Если вам действительно нужно восстановить данные в другой ящик необходимо использовать ключ -AllowLegacyDNMismatch:

New-MailboxRestoreRequest -SourceDatabase RecoveryDB -SourceStoreMailbox 'Mike Pfeiffer' -TargetMailbox administrator -TargetRootFolder Restore -AllowLegacyDNMismatch

recovery-exch10sp1-recdb-3-9

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

recovery-exch10sp1-recdb-3-10

Будьте очень осторожны с восстановлением в другой почтовый ящик. Если вы пропустите ключ -TargetRootFolder данные будут восстановлены в существующие папки и сольются с другими письмами.

Массовое восстановление

Вы можете попасть в ситуацию когда вам необходимо восстановить все данные из базы восстановления. К примеру предположим что нам нужно восстановить папку Контактов из всех почтовых ящиков. В этом случае используем следующую команду:

foreach($mailbox in Get-MailboxStatistics -Database RecoveryDB) {
  New-MailboxRestoreRequest -SourceDatabase RecoveryDB -SourceStoreMailbox $mailbox.DisplayName -TargetMailbox $mailbox.DisplayName -SourceRootFolder Contacts
}

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

Get-MailboxRestoreRequest -Status Queued

recovery-exch10sp1-recdb-3-11

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

 

 

Полезная информация

Если вам нужна качественная реклама в Минске, то лучшим способом является её размещения на портале Антресоль.by.

Я считаю, что глубоко неправы люди, для которых отдых в России это нечто странное. На самом деле в нашей огромной стране есть огромное количество мест, где можно замечательно отдохнуть за меньшие деньги, чем за границей или на Черном море. Например, одно из моих любимых мест – Алтай. Здесь вы можете посмотреть доступные вариант отдыха на Алтае.

Похожие посты
  • Восстановление данных с помощью базы восстановления в Exchange 2010 SP1. Часть 2
  • Восстановление данных с помощью базы восстановления в Exchange 2010 SP1. Часть 1
  • Как узнать размер базы Exchange с помощью PowerShell
  • Перемещение базы данных ACS на другой диск
  • Как блокировать копию базы данных от автоматической активации в Exchange 2010
  • Перевод базы Exchange в состояние Clean Shutdown с помощью Eseutil
  • Перемещение базы данных DPM с удаленного SQL сервера на локальный SQL
  • Ошибка при удалении дефолтной почтовой базы в Exchange 2010
  • Новые возможности Exchange 2007 SP2 – VSS плагин, часть 2 – восстановление
  • Резервное копирования базы WSUS