Восстановление баз данных Exchange

При правильном отключении баз данных рабочие журналы и временные базы попадают в основную базу данных, находящуюся в состоянии Clean Shutdown. Журналы транзакций будут иметь общую информацию с основной БД, но избавляться от них не стоит, т.к. они помогают при восстановлении баз Exchange.

Восстановление базы данных Exchange

Специалисты ГК «Интегрус» предлагают услуги по восстановлению баз данных для Exchange Server с применением различных сценариев восстановления работоспособности в зависимости от объема потерянной информации, а также выполняют резервное копирование БД для предотвращения проблем в будущем.

Необходимость восстановления для Exchange баз данных вызвана:

  • аварийными перезагрузками сервера;
  • сбоями ОС;
  • грубыми отключениями электропитания сервера.

Чаще всего сервер без внешнего вмешательства монтирует и переводит базу в согласованное состояние. Если БД оказывается в состоянии Dirty Shutdown, это означает ее несогласованность. Для исправления ошибки применяются транзакции, зафиксированные в журналах непосредственно в момент сбоя.

Варианты восстановления базы Exchange 2013/2016

Решить проблему можно двумя способами.

Soft Recovery. Первый способ называют мягким. Его применяют, когда для восстановления баз Exchange Server есть необходимые условия:

  • исправность файла БД;
  • имеются неповрежденные журналы транзакций.

Восстановление выполняется в Exchange Management Shell.

Потребуется прописать рабочий каталог с БД:

Set-Location “E:\Exbase\data”

Для отображения служебной информации, набрать:

eseutil.exe /mh test_base.edb

В полученном результате посмотреть свойства информации, а именно: состояние и необходимость использования файлов для согласования данных (Log Required). Если все хорошо, второй параметр равен 0.

Если нет, проверяется исправность необходимых логов. Анализ файлов журналов выполняется с помощью Eseutil. Если логи хранятся в конкретном каталоге, потребуется перейти в него. Проверка логов выполняется путем ввода префикса базы и ключа /ml:

eseutil.exe /ml E00

Убедившись, что с логами порядок, запускается процесс восстановления с использованием ключа /r и префикса БД:

eseutil.exe /r E00

Ключи /d и /l указывают соответственно путь к базе и логам.

Далее запускается проверка согласованности:

eseutil.exe /mh test_base.edb

Если добиться от базы статуса Clean Shutdown не удалось, требуется перейти к более грубому варианту восстановления.

Hard Recovery. Жесткий способ требуется, когда поврежденные данные (объем их остается неизвестным) удаляются из базы. В некоторых случаях, когда потеря информации в результате сбоя превышает допустимый порог, проще воспользоваться резервной копией и перелить БД из бекапа.

Восстановлению подлежат лишь данные низкого уровня – указатели и страницы данных. Если они повреждены, то просто удаляются. К такому методу прибегают только при неисправности БД, когда хуже уже не будет.

Для восстановления БД выполняется команда:

eseutil.exe /p test_base.edb

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

eseutil.exe /mh test_base.edb

Добившись статуса Clean Shutdown запускается онлайн-дефрагментация, создающая новую базу с неповрежденными данными. Для ее создания требуется объем свободного пространства на 10% больше размера старой БД. По завершении дефрагментации несогласованная база уничтожается.

Запускается дефрагментация:

eseutil.exe /d test_base.edb

Для монтажа БД удаляются старые журналы транзакций и временные файлы:

Mount-Database test_base

Проверить логическую целостность полной БД или ее отдельных сегментов можно командой:

New-MailboxRepairRequest -Database test_base -CorruptionType

SearchFolder,AggregateCounts,ProvisionedFolder,FolderView

Тип проверки обозначается ключом -CorruptionType.

Для отслеживания процесса восстановления применяют команду:

Get-MailboxRepairRequest -Database test_base

Восстановление баз Exchange 2010

Выполняется за счет функций DAG либо модуля системы архивации, основанного на теневом копировании. Для восстановления потребуется сервер Exchange 2010 с MailBox. Алгоритм примерный, он может меняться в зависимости от различных факторов:

  • Создать аварийную БД и настроить почту для работы с ней.
  • Переустановить старый Exchange Server командой Setup /m:RecoverServer.
  • Восстановить почтовую БД из бекапа на корректный сервер.
  • Перебросить пользователей на восстановленную БД.
  • Объединить аварийную и восстановленную базы.

Для того чтобы обеспечить бесперебойную работу компании и минимизировать время на восстановление после любых сбоев, специалисты ГК «Интегрус» рекомендуют заранее создавать резервные копии всей критически важной информации, в т.ч. БД Exchange Server.

АВТОР СТАТЬИТатьяна Михеева

копирайтер компании "Интегрус"