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


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

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

Компонент резервного копирования и восстановления SQL Server обеспечивает необходимую защиту важных данных, которые хранятся в базах данных SQL Server. Чтобы минимизировать риск необратимой потери данных, необходимо регулярно создавать резервные копии баз данных, в которых будут сохраняться производимые изменения данных. Хорошо продуманная стратегия резервного копирования и восстановления защищает базы от потери данных при повреждениях, происходящих из-за различных сбоев. Проверьте выбранную стратегию, выполнив восстановление баз данных из набора резервных копий; это поможет эффективно среагировать на реальные проблемы.

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

Начиная с версии SQL Server 2012 с пакетом обновления 1 (SP1) и накопительным обновлением CU2, поддерживается резервное копирование данных SQL Server в службу хранилищ больших двоичных объектов Windows Azure. Дополнительные сведения см. в разделах Улучшения резервного копирования и восстановления и Резервное копирование и восстановление SQL Server с помощью службы хранилищ больших двоичных объектов Windows Azure.

Решения для типичных проблем клиентов с базой данных SQL Windows Azure, SQL Server Data Tools и средой SQL Server Management Studio см. в разделе Управление жизненным циклом базы данных.

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

  • Преимущества

  • Компоненты и основные понятия

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

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

Преимущества

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

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

    Это единственный способ надежно защитить данные в SQL Server.

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

    • сбой носителя;

    • ошибки пользователей (например, удаление таблицы по ошибке);

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

    • стихийные бедствия.

  • Кроме того, резервные копии баз данных полезны и при выполнении повседневных административных задач, например для копирования баз данных с одного сервера на другой, настройки Группы доступности AlwaysOn или зеркального отображения баз данных и архивирования.

[В начало]

Компоненты и основные понятия

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

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

  • устройство резервного копирования
    Диск или ленточное устройство, на которые записываются резервные копии SQL Server для последующего восстановления.

  • носитель данных резервной копии
    Один или несколько наборов дисков или ленточных устройств, на которые записывается резервная копия.

  • резервное копирование данных
    Резервная копия данных всей базы данных (резервная копия базы данных), части базы данных (частичная резервная копия) или набора файлов данных или файловых групп (резервная копия файлов).

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

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

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

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

  • восстановить
    Для возврата базы данных в стабильное и согласованное состояние.

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

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

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

[В начало]

Введение в стратегии резервного копирования и восстановления

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

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

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

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

Разработка эффективной стратегии резервирования и восстановления требует тщательного планирования, реализации и тестирования. Необходимо тестирование. До тех пор пока не были успешно восстановлены все резервные копии во всех сочетаниях, вовлеченных в стратегию восстановления, нет и стратегии резервного копирования. Необходимо оценить ряд факторов. Это включает следующее:

  • Производственные задачи организации, относящиеся к базе данных, особенно требования к доступности данных и их защите от потери.

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

  • Ограничения на ресурсы, например: оборудование, персонал, пространство для хранения носителей резервных копий, физическая безопасность этих носителей и так далее.

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

    Формат хранения данных SQL Server на диске в 64-разрядной и 32-разрядной средах одинаков. Следовательно, резервное копирование и восстановление работают и в 32-разрядной, и в 64-разрядной средах. Резервная копия, созданная на экземпляре сервера, работающем в одной среде, может быть восстановлена на экземпляре сервера, работающем в другой среде.

[В начало]

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

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

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

Создание стратегии резервного копирования

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

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

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

  • Насколько часты и вероятны изменения и обновления?

    Если изменения часты, учтите следующее.

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

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

  • Касаются ли обычно изменения небольшой или же значительной части базы данных?

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

  • Сколько места на диске требуется для полного резервного копирования базы данных?

    Дополнительные сведения см. в разделе Оценка размера полной резервной копии базы данных ниже в этом подразделе.

Оценка размера полной резервной копии базы данных

Перед тем как выбрать стратегию резервного копирования и восстановления, необходимо рассчитать, какой объем места на диске необходим для полной резервной копии базы данных. При выполнении операции резервного копирования данные, содержащиеся в базе данных, копируются в файл резервной копии. Резервная копия содержит только фактические данные в базе данных, а не любое неиспользованное пространство. Поэтому резервная копия обычно меньше, чем база данных. Размер полной резервной копии базы данных можно вычислить с помощью системной хранимой процедуры sp_spaceused. Дополнительные сведения см. в разделе sp_spaceused (Transact-SQL).

Создание расписания резервного копирования

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

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

Сведения об ограничениях параллелизма во время резервного копирования см. в разделе Общие сведения о резервном копировании (SQL Server).

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

Тестирование резервных копий

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

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

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

Создание расписания заданий резервного копирования

Работа с устройствами резервного копирования и носителями резервных копий

Создание резервных копий

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

Для создания частичной резервной копии или резервной копии только для копирования используется инструкция BACKUP языка Transact-SQL с параметром PARTIAL или COPY_ONLY.

Использование среды SQL Server Management Studio

Использование Transact-SQL

[В начало]

Восстановление резервных копий данных

Использование среды SQL Server Management Studio

Использование Transact-SQL

[В начало]

Восстановление журналов транзакций (модель полного восстановления)

Использование среды SQL Server Management Studio

Использование Transact-SQL

[В начало]

Дополнительные задачи восстановления

Использование Transact-SQL

[В начало]

См. также

Справочник

BACKUP (Transact-SQL)

RESTORE (Transact-SQL)

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

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

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

Создание и восстановление резервных копий баз данных служб Analysis Services

Создание резервных копий и восстановление полнотекстовых каталогов и индексов

Создание резервной копии и восстановление из копий реплицируемых баз данных

Журнал транзакций (SQL Server)

Модели восстановления (SQL Server)

Наборы носителей, семейства носителей и резервные наборы данных (SQL Server)