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


Полные резервные копии баз данных (SQL Server)

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

СоветСовет

Однако по мере увеличения размера базы данных полное резервное копирование занимает больше времени и требует больше пространства для хранения. Поэтому для больших баз данных может потребоваться, кроме полных резервных копий, создавать также и разностные резервные копии баз данных. Дополнительные сведения см. в разделе Разностные резервные копии (SQL Server).

Примечание по безопасностиПримечание по безопасности

Для резервной копии базы данных свойству TRUSTWORTHY присваивается значение OFF. Дополнительные сведения о том, как установить TRUSTWORTHY в ON, см. в разделе Параметры ALTER DATABASE SET (Transact-SQL).

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

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

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

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

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

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

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

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

Пример (Transact-SQL)

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

-- Back up the AdventureWorks2012 database to new media set.
BACKUP DATABASE AdventureWorks2012
    TO DISK = 'Z:\SQLServerBackups\AdventureWorksSimpleRM.bak' 
    WITH FORMAT;
GO

[В начало]

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

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

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

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

Пример (Transact-SQL)

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

USE master;
ALTER DATABASE AdventureWorks2012 SET RECOVERY FULL;
GO
-- Back up the AdventureWorks2012 database to new media set (backup set 1).
BACKUP DATABASE AdventureWorks2012
  TO DISK = 'Z:\SQLServerBackups\AdventureWorks2012FullRM.bak' 
  WITH FORMAT;
GO
--Create a routine log backup (backup set 2).
BACKUP LOG AdventureWorks2012 TO DISK = 'Z:\SQLServerBackups\AdventureWorks2012FullRM.bak';
GO

[В начало]

Восстановление базы данных с помощью полной резервной копии

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

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

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

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

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

Использование мастера планов обслуживания

[В начало]

См. также

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

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

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

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