В Exchange 2007 удобно реализована процедура восстановления из бэкапа с помощью Recovery Storage Group — RSG (группа восстановления). Предположим у нас есть бэкап базы Exchange, сделанный с помощью Windows Backup — файл bkf — и нам требуется восстановить удаленные письма в одном из ящиков. Порядок действий такой:
1. Создаем группу восстановления RSG через консоль EMC в разделе Toolbox — Database recovery management.
2. В Windows Backup выбираем какой файл восстановить, и при восстановлении не забываем поставить галочку «Last Restore Set». Также указываем путь для временных файлов, к примеру C:\TEMP. Если галочку не поставить, то база не подмонтируется, об этом чуть ниже в дополнении.
База автоматически будет восстанавливаться в созданную базу RSG, и ничего лишнего не сотрет. Для уверенности можно еще проверить в свойствах рабочей базы Exchange галочку «this database can be overwritten by restore» — она не должна стоять.
3. После успешного восстановления и монтирования базы, нажимаем «Merge or copy mailbox contents», затем «Gather merge information», и «perform pre-merge tasks».
4. На этом шаге можно отфильтровать письма, которые мы хотим восстановить например по диапазону дат, или даже по теме письма, нажав «Show advanced options», а также выбрать в какой ящик и в какую папку восстанавливать письма (Unique target mailbox alias, Target folder).
Можно также сделать восстановление через консоль EMS. Например команда
Restore-Mailbox -RSGMailbox ‘Ivan Petrov’ -RSGDatabase ‘EXCHANGESERVER\Recovery Storage Group\Mailbox Database’ -Id ‘Administrator’ -TargetFolder ‘Restore’ -EndDate ’01/01/2014′
восстановит письма до 1 января 2014г. из ящика Ivan Petrov базы RSG в ящик Administrator в папку Restore. (даты указываются в формате MM/DD/YY.
5. После успешного восстановления можно размонтировать восстановленную базу и удалить RSG.
При монтировании восстановленной базы может возникать ошибка:
Error encountered while trying to mount the database.
Error encountered while trying to mount the database (Mailbox Database) in the recovery storage group (Recovery Storage Group). Error message is: Exchange is unable to mount the database that you specified. Specified database: EXCHANGE\Recovery Storage Group\Mailbox Database; Error code: MapiExceptionCallFailed: Unable to mount database. (hr=0x80004005, ec=-544)
Такое бывает если не поставить галочку «Last restore set» при восстановлении из бэкапа. Решается следующей командой:
eseutil /cc «E:\TEMP\First Storage Group»
где E:\TEMP — путь к временной папке, указанный при восстановлении. Там в папке с названием группы хранения должен находится файл .env.