Сервер SQL предоставляет разные методы резервирования для удовлетворения потребностей широкого круга бизнес-окружения и активности БД.
Полное резервирование БД.При использовании БД в основном только для чтения полное резервирование может быть нам лучшим решением для предотвращения потери данных. Во время выполнения полного резервного копирования SQL Server :
• резервирует любую активность, которая происходит во время резервирования;
• резервирует любые незавершенные транзакции в журнале транзакций. Сервер SQL использует части журнала транзакций, которые были захвачены в файл резервирования для того, чтобы убедиться в целостности во время восстановления.
Дифференцированное резервирование БДвыполняется для сокращения времени, необходимого для восстановления часто изменяемой БД. Метод рекомендуется использовать в случае, семи выполнено полное резервирование. При дифференцированном резервировании SQL Server:
· резервирует часть БД, которая изменилась с момента последнего полного резервирования. Для определения измененных страниц SQL Server сравниваетLSN на странице для синхронизации с LSN последнего резервирования;
· резервирует всю активность, которая появилась во время дифференцированного резервирования, и любые незавершенные транзакции в журнале транзакций.
Резервирование журнала транзакцийприменяется для записи любых изменений в БД. Метод рекомендуется использовать при выполнении полного резервирования БД. При этом журнал транзакций нельзя восстановить без соответствующего резервирования БД; журнал транзакций невозможно резервировать с помощью простой модели резервирования.
Резервирование файлов БД и файловых групп.Метод используется в случае нецелесообразности полного резервного копирования на очень больших БД. При резервировании файлов БД или файловых групп с помощью SQL Server :
• резервируются только те файлы, которые указаны в опции FILE или FILEGPOUP;
• резервируются только определенные файлы, а не вся БД.
Ограничения при резервировании файлов и файловых групп БД.При резервировании БД, которая состоит из нескольких файлов или файловых групп, бывает необходимо резервировать различные файлы БД как целый модуль, если созданы индексы. Сервер SQL автоматически определяет время создания индексов с момента последнего резервирования БД и требует резервирования. полного набора измененных файлов в один целый модуль.
При создании индекса в простой модели восстановления журнал транзакций фиксирует факт создания индекса и список страниц, которые использовались при этом. Использование этого журнала транзакций во время восстановления БД приводит к тому, что SQL Server выполняет оператор CREATE INDEX и использует оригинальные страницы индекса.
Для того чтобы SQL Server пересоздал индексы, все файлы БД, содержащие базовые таблицы, и все файлы БД, измененные во время создания индекса, должны находиться в том состоянии, в котором и находились при создании индекса.