2017-07-13 12 views
0

Ich habe einen Fehler einer differenziellen Sicherung in unserem Wartungsplan festgestellt. Es scheint das Ergebnis einer versuchten Enterprise-Vault-Kopie zu sein, kann dies jedoch zur Zeit nicht bestätigen. Die vorherige vollständige Sicherung wurde um 17:00 Uhr durchgeführt und der Fehler trat um 23:30 Uhr auf.SQL Server differenzielle Sicherung Fehler

enter image description here

Die Protokolldatei befindet sich hier:

Microsoft(R) Server Maintenance Utility (Unicode) Version 10.50.6220 
Report was generated on "server_name". 
Maintenance Plan: db_name backup Differential 
Duration: 00:00:00 
Status: Warning: One or more tasks failed. 
Details: 
Back Up Database Task (server_name) 
Backup Database on Local server connection 
Databases: DB_NAME 
Type: Differential 
Append existing 
Task start: 2017-07-12T23:30:01. 
Task end: 2017-07-12T23:30:02. 
Failed:(-1073548784) Executing the query "BACKUP DATABASE [DB_NAME] TO DISK = N'C:..." failed with the following error: "Cannot perform a differential backup for database "DB_NAME", 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''C:\Full Backups\Differentials\DB_NAME'' 

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

GO 

Problem ist, dass ich nicht diese neue vollständige Sicherung scheinen zu finden, die erstellt wurde, dass die differenzielle Sicherung von 0.30 als Standard ihre Basis? Gibt es eine Möglichkeit herauszufinden, auf welche Basisdatei ein Differential verweist?

+0

Das hat wirklich nichts mit ** Programmierung ** zu tun (was * diese Seite * ist ** alles über **), aber mit DB-Administration - so ist es off-topic hier und gehört auf [dba. stackexchange.com] (http://dba.stackexchange.com) - Wählen, um zu bewegen. –

+0

Entschuldigung @marc_s. Es scheint, ich kann das nicht mit meinem Ruf tun, so glücklich, dass es verschoben wurde, wenn Sie mir helfen können – famethrowa

Antwort

0

Eine Möglichkeit besteht darin, diesen Job mithilfe von PowerShell-Skripts zu automatisieren (die in verschiedenen Foren verfügbar sind). Dort können Sie separate Parameter für inkrementelle, vollständige und differenzielle Sicherungen festlegen. Eine andere Möglichkeit, die ich bevorzuge, ist diese Aufgabe mit einer dedizierten Backup-Software-Setup. Früher hatte ich MS DPM, um SQL-Backups zu verwalten, und es funktionierte wirklich großartig. Ich habe auch Cloudberry Backup für SQL-Server versucht und es ist auch ein leichtes und zuverlässiges Cloud-basiertes Backup-Tool.

Verwandte Themen