Резервные копии заключительного фрагмента журнала (SQL Server)

В данном разделе рассматриваются вопросы резервного копирования и восстановления только тех баз данных SQL Server, которые используют модель полного восстановления или модель восстановления с неполным протоколированием.

В резервную копию заключительного фрагмента журнала попадают все записи, резервная копия которых еще не была создана (заключительный фрагмент журнала), что позволяет предотвратить потерю работы и сохранить неповрежденную цепочку журналов. Для восстановления базы данных SQL Server на последний момент времени необходимо предварительно выполнить резервное копирование заключительного фрагмента журнала ее транзакций. Заключительный фрагмент журнала является становится последней рассматриваемой частью резервной копии в плане восстановления базы данных.

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

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

В этом разделе:

  • Сценарии, в которых требуется резервная копия заключительного фрагмента журнала.

  • Резервное копирование заключительного фрагмента журнала с неполными метаданными резервной копии

  • Связанные задачи

  • См. также

Сценарии, в которых требуется резервная копия заключительного фрагмента журнала.

Рекомендуется формировать резервную копию заключительного фрагмента журнала в следующих сценариях.

  • Если база данных находится в режиме «в сети» и следующим действием над базой данных должна быть операция восстановления, то прежде необходимо выполнить резервное копирование заключительного фрагмента журнала. Во избежание ошибок в базе данных, работающей в режиме «в сети», необходимо использовать параметр WITH NORECOVERY инструкции BACKUP Transact-SQL.

  • Если база данных, работающая в режиме «вне в сети», не запускается и необходимо восстановить базу данных, то в первую очередь необходимо выполнить резервное копирование заключительного фрагмента журнала. Так как в это время никакие транзакции не выполняются, параметр WITH NORECOVERY использовать не обязательно.

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

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

В следующей таблице представлена сводка параметров BACKUP NORECOVERY и CONTINUE_AFTER_ERROR.

Параметр BACKUP LOG

Комментарии

NORECOVERY

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

Если параметры NO_TRUNCATE или COPY_ONLY не заданы, то журнал усекается.

Важное примечаниеВажно!

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

CONTINUE_AFTER_ERROR

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

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

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

Резервное копирование заключительного фрагмента журнала с неполными метаданными резервной копии

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

Если резервная копия заключительного фрагмента журнала содержит неполные метаданные, то параметр has_incomplete_metadata в таблице backupset принимает значение 1. Кроме того, выходной аргумент HasIncompleteMetadata инструкции RESTORE HEADERONLY принимает значение 1.

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

  • backup_set_id

  • filegroup_id

  • тип

  • type_desc

  • is_readonly

Связанные задачи

О создании резервной копии заключительного фрагмента журнала см. в разделе Создание резервной копии журнала транзакций при повреждении базы данных (SQL Server).

О восстановлении резервной копии журнала транзакций см. в разделе Восстановление резервной копии журнала транзакций (SQL Server).

[В начало]

См. также

Отсутствует.

[В начало]

См. также

Справочник

BACKUP (Transact-SQL)

RESTORE (Transact-SQL)

Основные понятия

Резервное копирование и восстановление баз данных SQL Server

Резервные копии только для копирования (SQL Server)

Резервные копии журналов транзакций (SQL Server)

Применение резервных копий журналов транзакций (SQL Server)