Вопрос

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

Microsoft(R) Server Maintenance Utility (Unicode) Version 10.0.2531 Report was generated on "WIN-F9U4VJXGWF5".
Maintenance Plan: FIREDataFB
Duration: 00:31:31
Status: Succeeded.
Details:
Clean Up History (WIN-F9U4VJXGWF5)
Cleanup history on Local server connection History type: Backup,Job,Maintenance Plan
Age: Older than 1 Weeks
Task start: 2010-10-11T03:30:03.
Task end: 2010-10-11T03:30:03.
Success
Command:declare @dt datetime select @dt = cast(N''2010-10-04T03:30:02'' as datetime) exec msdb.dbo.sp_delete_backuphistory @dt GO EXEC msdb.dbo.sp_purge_jobhistory  @oldest_date=''2010-10-04T03:30:02''
GO
EXECUTE msdb..sp_maintplan_delete_log null,null,''2010-10-04T03:30:02''
GO

Back Up Database (Full) (WIN-F9U4VJXGWF5) Backup Database on Local server connection
Databases: FIREData
Type: Full
Append existing
Task start: 2010-10-11T03:30:03.
Task end: 2010-10-11T04:01:33.
Success
Command:EXECUTE master.dbo.xp_create_subdir N''F:\SQL Backups\FIREData''

GO
BACKUP DATABASE [FIREData] TO  DISK = N''F:\SQL Backups\FIREData\FIREData_backup_2010_10_11_033003_7444370.bak'' WITH NOFORMAT, NOINIT,  NAME = N''FIREData_backup_2010_10_11_033003_7424370'', SKIP, REWIND, NOUNLOAD,  STATS = 10 GO declare @backupSetId as int select @backupSetId = position from msdb..backupset where database_name=N''FIREData'' and backup_set_id=(select max(backup_set_id) from msdb..backupset where database_name=N''FIREData'' ) if @backupSetId is null begin raiserror(N''Verify failed. Backup information for database ''''FIREData'''' not found.'', 16, 1) end RESTORE VERIFYONLY FROM  DISK = N''F:\SQL Backups\FIREData\FIREData_backup_2010_10_11_033003_7444370.bak'' WITH  FILE = @backupSetId,  NOUNLOAD,  NOREWIND

GO

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

Microsoft(R) Server Maintenance Utility (Unicode) Version 10.0.2531 Report was generated on "WIN-F9U4VJXGWF5".
Maintenance Plan: FIREDataDB
Duration: 00:00:01
Status: Warning: One or more tasks failed.
Details:
Back Up Database (Differential) (WIN-F9U4VJXGWF5) Backup Database on Local server connection
Databases: FIREData
Type: Differential
Append existing
Task start: 2010-10-12T03:30:03.
Task end: 2010-10-12T03:30:03.
Failed:(-1073548784) Executing the query "BACKUP DATABASE [FIREData] TO  DISK = N'F:\\SQL Bac..." failed with the following error: "Cannot perform a differential backup for database "FIREData", because a current database backup does not exist. Perform a full database backup by reissuing BACKUP DATABASE, omitting the WITH DIFFERENTIAL option.
BACKUP DATABASE is terminating abnormally.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.

Command:EXECUTE master.dbo.xp_create_subdir N''F:\SQL Backups\FIREData''

GO
BACKUP DATABASE [FIREData] TO  DISK = N''F:\SQL Backups\FIREData\FIREData_backup_2010_10_12_033003_4624370.bak'' WITH  DIFFERENTIAL , NOFORMAT, NOINIT,  NAME = N''FIREData_backup_2010_10_12_033003_4604370'', SKIP, REWIND, NOUNLOAD,  STATS = 10 GO declare @backupSetId as int select @backupSetId = position from msdb..backupset where database_name=N''FIREData'' and backup_set_id=(select max(backup_set_id) from msdb..backupset where database_name=N''FIREData'' ) if @backupSetId is null begin raiserror(N''Verify failed. Backup information for database ''''FIREData'''' not found.'', 16, 1) end RESTORE VERIFYONLY FROM  DISK = N''F:\SQL Backups\FIREData\FIREData_backup_2010_10_12_033003_4624370.bak'' WITH  FILE = @backupSetId,  NOUNLOAD,  NOREWIND

GO

Я должен пропустить что-то очевидное, потому что я не ожидаю, что мастер уступит непригодные сценарии, но я не могу найти проблему. Я повторил процесс создания дважды сейчас с книгой в руке и волшебника на готовности, но без радости. Любая помощь будет оценена. Я использую SQL Server 2008 Management Studio версии 10.0.2531.0 на Windows 7.

Это было полезно?

Решение

Я замечаю, что ваша дифференциальная резервная копия выполняется через 24 часа после завершения полной резервной копии. Вы абсолютно уверены, что полный файл резервного копирования существует во время выполнения задания дифференциала резервного копирования? Например, у вас есть какие-либо уборки или процессы, которые могли бы удалить файл резервного копирования?

Я предлагаю вам попытаться проверить, что вы действительно можете выполнить полную резервную копию, а затем дифференциальное резервное копирование в зависимости от вашей среды, выполнив соответствующие шаги вручную, используя T-SQL. Если успешно, вы можете быть уверены, что проблема существует исключительно как-то с вашим реализацией плана обслуживания.

Чтобы дополнительно помочь вам со своими собственными усилиями по устранению неполадок, вы также можете найти следующий поток с форумов MSDN, чтобы быть интересным чтением.

Невозможно выполнить дифференциальную резервную копию для базы данных

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top