Особенности переключений между моделью полного восстановления и моделью восстановления с неполным протоколированием

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

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

Ограничения

  • Для работы некоторых функций (например зеркального отображения) в базе данных должна применяться модель полного восстановления.

  • Когда включена репликация транзакций, операции SELECT INTO и BULK INSERT полностью протоколируются даже в модели восстановления с неполным протоколированием.

Переключение между полной моделью восстановления и моделью восстановления с неполным протоколированием

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

  • в настоящий момент пользователям запрещен доступ к базе данных;

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

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

Рекомендации:

  • Перед переходом на модель восстановления с неполным протоколированием создайте резервную копию журнала.

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

  • После выполнения массовых операций немедленно переключитесь обратно на модель полного восстановления.

  • После переключения с модели восстановления с неполным протоколированием на модель полного восстановления снова создается резервная копия журнала.

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

Рекомендуемый процесс использования восстановления с неполным протоколированием

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

Переключение с модели полного восстановления или восстановления с неполным протоколированием на модель простого восстановления

Переключение с восстановления с полным или с неполным протоколированием на простое восстановление возможно, но встречается редко.

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

Смена модели восстановления

Изменение модели восстановления (Transact-SQL)

Используйте инструкцию ALTER DATABASE следующим образом.

  • Переключение базы данных на модель полного восстановления:

    USE master;

    ALTER DATABASE database_name SET RECOVERY FULL;

  • Переключение базы данных на модель восстановления с неполным протоколированием:

    USE master;

    ALTER DATABASE database_name SET RECOVERY BULK_LOGGED;

ПримечаниеПримечание

Чтобы изменить модель восстановления по умолчанию, применяемую для новых баз данных, используйте инструкцию ALTER DATABASE, чтобы изменить модель восстановления базы данных model.

Изменение модели восстановления (среда SQL Server Management Studio)