@dobromin

Как сделать полное резервное копирование MSSQL Баз?

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

N''Ошибка верификации. Сведения о резервном копировании для базы данных

Не много погуглив нашел! Типо у меня выполняются разностные резервные копии....
Как так ??? не может такого быть просто вот не может и все.
После создания плановой задачи резервного копирования баз и были обнаружены ошибки. Я создал резервную копию в ручную для сравнения объема резервных копий, (В ручную) полное резервное копирование, вес 3.5гб. По заданию 3.5г если никто не писал то вес байт в байт. Значит создается полная (как я понял)
При создании плана резервного копирования есть поле для выбора "ПОЛНОЕ" или "РАЗНОСТНОЕ" Так вот жестко было выбрано полное!!!!
1e9e8235366c487db6d55c10b0c3b88d.jpg
Еще на хабре нашел статью

Так вот тут есть такая надпись

Пример SQL для создания резервной разностной копии БД с проверкой копии по завершению (отличается от полного копирования флагом DIFFERENTIAL вместо него нужно использовать NOFORMAT).

Вот я тут вообще не понял, так DIFFERENTIAL Это для полного или разностного.
вот как у меня

Microsoft(R) Server Maintenance Utility (Unicode) Version 13.0.1601
Отчет был сформирован на "server".
План обслуживания: MaintenancePlan
Продолжительность: 00:04:54
Состояние: Выполнено.
Подробности:
Резервное копирование базы данных (полное) (server)
Создать резервную копию базы данных на Соединение с локальным сервером
Базы данных basa,base2,base3,base4,base5
Тип: Полная
Добавить к существующему
Начало задачи: 2016-08-18T00:00:11.
Конец задачи: 2016-08-18T00:05:01.
Успешно
Команда:EXECUTE master.dbo.xp_create_subdir N''E:\sql\basa''
GO
EXECUTE master.dbo.xp_create_subdir N''E:\sql\base2''
GO
EXECUTE master.dbo.xp_create_subdir N''E:\sql\base3''
GO
EXECUTE master.dbo.xp_create_subdir N''E:\sql\base4''
GO
EXECUTE master.dbo.xp_create_subdir N''E:\sql\base5''

GO
BACKUP DATABASE [basa] TO DISK = N''E:\sql\basa\basa_backup_2016_08_18_000009_7188729.bak'' WITH RETAINDAYS = 14, NOFORMAT, NOINIT, NAME = N''basa_backup_2016_08_18_000009_7188729'', SKIP, REWIND, NOUNLOAD, STATS = 10
GO
declare @backupSetId as int
select @backupSetId = position from msdb..backupset where database_name=N''basa'' and backup_set_id=(select max(backup_set_id) from msdb..backupset where database_name=N''basa'' )
if @backupSetId is null begin raiserror(N''Ошибка верификации. Сведения о резервном копировании для базы данных "basa" не найдены.'', 16, 1) end
RESTORE VERIFYONLY FROM DISK = N''E:\sql\basa\basa_backup_2016_08_18_000009_7188729.bak'' WITH FILE = @backupSetId, NOUNLOAD, NOREWIND


SQL 2016
win 2012R2
  • Вопрос задан
  • 1343 просмотра
Пригласить эксперта
Ответы на вопрос 1
tsklab
@tsklab
Здесь отвечаю на вопросы.
Тип: Полная
Добавить к существующему

Сохраняете полную резервную копию каждый раз в один и тот же файл (а поскольку вы не привели текст ошибки полностью — что не так — ответа нет).

Ответ:

База данных выполнена в ручную полное резервное копирование


Ошибка верификации. Сведения о резервном копировании для базы данных "basa" не найдены.

Создайте план резервного копирования без предварительного ручного.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы