Обзор процессов восстановления (SQL Server)

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

  • База данных (полное восстановление базы данных)

    Вся база данных возвращается в прежнее состояние и восстанавливается, при этом база данных находится в режиме вне сети во время операций возврата и восстановления.

  • Файл данных (восстановление файла)

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

  • Страница данных (восстановление страницы)

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

Резервное копирование и восстановление SQL Server работает во всех поддерживаемых операционных системах (и в 32-разрядных, и в 64-разрядных версиях). Сведения о поддерживаемых операционных системах см. в разделе Требования к оборудованию и программному обеспечению для установки SQL Server 2012. Сведения о поддержке резервных копий более ранних версий SQL Server см. в подразделе «Поддержка совместимости» раздела RESTORE (Transact-SQL).

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

  • Общие сведения о сценариях восстановления

  • Модели восстановления и поддерживаемые операции восстановления

  • Ограничения для восстановления по простой модели восстановления

  • Восстановление в модели восстановления с неполным протоколированием

  • Помощник по восстановлению базы данных (среда SQL Server Management Studio)

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

  • См. также

Общие сведения о сценариях восстановления

Сценарий восстановления в SQL Server — процесс восстановления данных из одной или более резервных копий и возврат в исходное состояние базы данных. Поддерживаемые сценарии восстановления зависят от модели восстановления базы данных и выпуска SQL Server.

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

Сценарий восстановления

Простая модель восстановления

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

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

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

Дополнительные сведения см. в разделе Выполнение полного восстановления базы данных (Простая модель восстановления).

Это базовая стратегия восстановления. Восстановление всей базы данных включает в себя восстановление полной резервной копии, возможно, разностных резервных копий (если они есть) и восстановления всех последующих резервных копий журналов (последовательно). Восстановление всей базы данных завершается восстановлением из последней резервной копии журнала и возвратом в исходное состояние (RESTORE WITH RECOVERY).

Дополнительные сведения см. в разделе Выполнение полного восстановления базы данных (модель полного восстановления).

Восстановление файла *

Восстановление одного или более поврежденных файлов с атрибутом «только для чтения» без восстановления всей базы данных. Восстановление файла возможно только при наличии в базе данных хотя бы одной файловой группы с атрибутом «только для чтения».

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

Восстановление страницы

Неприменимо

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

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

Дополнительные сведения см. в разделе Восстановление страниц (SQL Server).

Поэтапное восстановление *

Поэтапное восстановление базы данных на уровне файловой группы, начиная с групп файлов, доступных для чтения и записи, вторичных файловых групп.

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

* Оперативное восстановление поддерживается только в выпуске SQL Server 2005 Enterprise Edition и более поздних версиях.

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

[В начало]

Преимущества восстановления файлов или страниц

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

  • Восстановление данных меньшего объема данных уменьшает время, затрачиваемое на копирование и восстановление.

  • В среде SQL Server 2005 Enterprise Edition и более поздних версиях восстановление файлов или страниц позволяет другим данным в базе данных оставаться в режиме в сети во время операции восстановления.

[В начало]

Модели восстановления и поддерживаемые операции восстановления

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

Операция восстановления

Модель полного восстановления

Модель восстановления с неполным протоколированием

Простая модель восстановления

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

Полное восстановление (при наличии журнала).

С некоторыми потерями данных.

Будут потеряны все данные с момента создания последней полной или разностной резервной копии.

Восстановление на момент времени

На любое время, сохранившееся в резервных копиях журналов.

Запрещено, если резервная копия журналов содержит какие-либо изменения с неполным протоколированием.

Не поддерживается.

Восстановление файла *

Поддерживается полностью.

Иногда.**

Только для вторичных файлов, доступных только для чтения.

Восстановление страницы *

Поддерживается полностью.

Иногда.**

Нет.

Поэтапное (на уровне файловой группы) восстановление *

Поддерживается полностью.

Иногда.**

Только для вторичных файлов, доступных только для чтения.

* Доступно только в выпуске SQL Server 2005 Enterprise Edition и более поздних версиях.

** Сведения о необходимых условиях см. в подразделе Ограничения для восстановления по простой модели восстановления далее в этом разделе.

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

Независимо от модели восстановления базы данных, резервная копия SQL Server не может быть восстановлена на SQL Server, имеющем версию, предшествующую версии, создавшей резервную копию. Так, например, резервная копия, созданная на SQL Server 2012, не может быть восстановлена на SQL Server 2008.

[В начало]

Сценарии восстановления по простой модели восстановления

В простой модели восстановления предусмотрены следующие ограничения для операции восстановления.

Если приведенные выше ограничения противоречат задачам восстановления, рекомендуется использовать модель полного восстановления. Дополнительные сведения см. в разделе Общие сведения о резервном копировании (SQL Server).

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

Независимо от модели восстановления базы данных, резервная копия SQL Server не может быть восстановлена на SQL Server, имеющем версию, предшествующую версии, создавшей резервную копию. Так, например, резервная копия, созданная на SQL Server 2012, не может быть восстановлена на SQL Server 2008.

[В начало]

Восстановление в модели восстановления с неполным протоколированием

В этом разделе рассматриваются вопросы, относящиеся исключительно к модели восстановления с неполным протоколированием, которая разработана исключительно в дополнение к модели полного восстановления.

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

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

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

[В начало]

Ограничения для восстановления на момент времени

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

Ограничения восстановления в сети

Последовательность восстановления в сети работает только при выполнении следующих условий:

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

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

  • Если в базе данных существуют массовые изменения, все файлы должны находиться в режиме «в сети» или они должны быть уничтоженны. (Это означает, что они больше не являются частью базы данных.)

Если эти условия не выполняются, последовательность восстановления в сети завершается сбоем.

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

Перед тем, как начать восстановление в сети, рекомендуется переключиться к модели полного восстановления. Дополнительные сведения см. в разделе Модели восстановления (SQL Server).

Дополнительные сведения о выполнении восстановления в сети см. в разделе Восстановление в сети (SQL Server).

[В начало]

Помощник по восстановлению базы данных (среда SQL Server Management Studio)

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

  • **Алгоритм плана восстановления: ** значительно улучшен алгоритм, используемый при создании планов восстановления, особенно для сложных сценариев восстановления. Многие крайние случаи, включая разветвляющиеся сценарии восстановления на момент времени, обрабатываются более эффективно, чем в предыдущих версиях SQL Server.

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

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

Значок стрелки, используемый со ссылкой «В начало»[В начало]

См. также

Отсутствуют.

[В начало]

См. также

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

Общие сведения о резервном копировании (SQL Server)