Как создать резервную копию журнала транзакций при повреждении базы данных (Transact-SQL)
В этом подразделе рассматривается создание резервной копии журнала транзакций при повреждении базы данных.
Создание резервной копии активного журнала транзакций
Для создания резервной копии активного журнала транзакций выполните инструкцию BACKUP LOG, указав:
имя базы данных, которой принадлежит журнал транзакций для резервного копирования;
устройство резервного копирования, на котором будет создана резервная копия журнала транзакций;
предложение NO_TRUNCATE.
Это предложение позволяет выполнить резервное копирование активной части журнала транзакций, даже если база данных недоступна, при условии, что файл журнала транзакций доступен и не поврежден.
Дополнительно можно указать следующее.
Предложение INIT для перезаписи существующих данных на носителе резервных копий и записи файла резервной копии как первого файла на носителе резервных копий. Если на носителе нет заголовка, он будет автоматически записан.
Предложения SKIP и INIT, служащие для перезаписи носителя резервной копии, несмотря на наличие на нем резервных копий, срок действия которых еще не истек, или несовпадение имени носителя с именем на носителе резервной копии.
Предложение FORMAT для инициализации впервые используемого носителя резервных копий и перезаписи его заголовка.
Если указано предложение FORMAT, то предложение INIT не требуется.
Важно! Будьте предельно осторожны с использованием предложения FORMAT или INIT в инструкции BACKUP, так как при этом удаляются все резервные копии, сохраненные ранее на носителе резервных копий.
Пример
Важно! |
---|
База данных MyAdvWorks_FullRM является копией базы данных AdventureWorks, использующей простую модель восстановления. Чтобы разрешить создание резервных копий журналов, перед проведением полного резервного копирования база данных должна быть настроена на использование модели полного восстановления путем выполнения инструкции ALTER DATABASE MyAdvWorks_FullRM SET RECOVERY FULL. |
В этом примере выполняется резервное копирование активного журнала транзакций для базы данных MyAdvWorks_FullRM, несмотря на то, что она была повреждена и недоступна. Тем не менее сам журнал транзакций не поврежден и доступен.
BACKUP LOG MyAdvWorks_FullRM TO MyAdvWorks_FullRM_log1 WITH NO_TRUNCATEGO