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

Скрипты:

Создаем основной бекап
BACKUP DATABASE [<имя базы>] TO DISK = N'<путь до полного бекапа>’

Делаем инкрементальные бекапы
BACKUP DATABASE [<имя базы>] TO DISK = N'<путь до дифференциального бекапа>’ WITH DIFFERENTIAL

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

RESTORE DATABASE [<имя базы>] FROM DISK = N'<путь до полного бекапа>’
WITH NORECOVERY
GO

RESTORE DATABASE [<имя базы>] FROM DISK = N'<путь до дифференциального бекапа>’
WITH FILE = 1,
RECOVERY
GO

Руслан Раянов

Recent Posts

Форма теста внешних действий #falconstart

Вызов внешних действий - это возможность действия, выходящего за рамки возможности работы с БД через…

3 недели ago

Концепция внешних действий – telegram, email, уведомления на сайте

Вызов внешних действий - это возможность действия, выходящего за рамки возможности работы с БД через…

3 недели ago

Работа с JSON в SQL #falconstart

После выполнения действий в SQL на клиенте иногда возникает необходимость что-то обновить или сделать. Для…

4 недели ago

Форма с отправкой запроса API. Тестирование исходящих запросов #falconstart

Вы можете обратиться к внешним API через использование Внешних действий (код apirequest, использование описано в…

1 месяц ago

Таблица Trace для отслеживания событий на сайте

В системной таблице as_trace хранятся данные по работе приложения. Поле code определяет тип события: DBLREQ…

1 месяц ago

Работа с ошибками в системе. Генерация отчета по ошибкам #falconstart

Рассмотрим механизм анализа ошибок, как это всё работает, и как его использовать. Когда происходит ошибка…

1 месяц ago