Поделиться через


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

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

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

Операция восстановления только по журналу транзакций переводит автономную файловую группу в оперативный режим, при этом не выполняется ни копирование, ни повтор, ни стадия отката. Дополнительные сведения о фазах восстановления см. в разделе Основные сведения о восстановлении из резервных копий и по журналам в SQL Server.

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

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

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

    Синтаксис инструкции RESTORE для восстановления файлов только по журналу транзакций:

    RESTORE DATABASE имя_базы_данных { FILE **=**logical_file_name | FILEGROUP **=**logical_filegroup_name }[ ,...n ] WITH RECOVERY

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

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

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

    Синтаксис инструкции RESTORE для восстановления базы данных только по журналу транзакций:

    RESTORE DATABASE имя_базы_данных WITH RECOVERY

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

Предложение FROM = <backup_device> не используется для восстановления базы данных только по журналу транзакций, поскольку резервная копия не требуется.

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

Примеры

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

RESTORE DATABASE Sales FILEGROUP=SalesGroup2 WITH RECOVERY;

Завершение сценария поэтапного восстановления восстановлением только по журналу транзакций