2010-10-18 89 views
3

我使用SQL Server維護向導(以及一本書)來生成Full和Differentail備份。完整備份在星期一早上運行,差分運行星期二到星期六。完整備份運行良好並生成以下電子郵件報告...SQL Server維護向導備份計劃

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 

我必須失去了一些東西很明顯,因爲我不希望向導產生不可腳本,但我不能發現問題。我已經重複了兩次創作過程,手裏拿着書和魔法師準備好了,但沒有快樂。任何幫助,將不勝感激。我在Windows 7上使用SQL Server 2008 Management Studio版本10.0.2531.0。

回答

1

我注意到您的差分備份在完全備份完成後24小時內正在執行。您是否完全確定在差異備份作業執行時存在完整備份文件?例如,您是否有任何清理作業或進程可能會刪除備份文件?

我建議您嘗試通過使用T-SQL手動完成適當的步驟來驗證您確實可以在您的環境中執行完整備份,然後進行差異備份。如果成功,您可以確定該問題僅以您的維護計劃實施的某種方式存在。

爲了進一步幫助您解決您的問題,您可能還會從MSDN論壇中找到以下線索,以便進行有趣的閱讀。

Cannot perform a differential backup for database