„Für die Datenbank „myDb“ kann kein differenzielles Backup durchgeführt werden, da kein aktuelles Datenbank-Backup vorhanden ist.“

„Für die Datenbank „myDb“ kann kein differenzielles Backup durchgeführt werden, da kein aktuelles Datenbank-Backup vorhanden ist.“

Ich habe ein scheinbar recht häufiges Problem, wenn ich versuche, ein differenzielles Backup zu erstellen. Wir haben einen SQL Server 2008 Standard (64 Bit) und verwenden Litespeed v 5.0.2.0, um unsere Backups zu erstellen. Wir erstellen einmal pro Woche vollständige Backups und täglich ein differenzielles Backup. Das Problem ist, dass ich jedes Mal, wenn ich versuche, ein differenzielles Backup zu erstellen, die folgende Fehlermeldung erhalte:

Das Öffnen des VDI ist aufgrund eines angeforderten Abbruchs fehlgeschlagen
. Die Sicherungsdatenbank wird abnormal beendet.

Für die Datenbank „myDb“ kann keine differenzielle Sicherung durchgeführt werden, da keine aktuelle Datenbanksicherung vorhanden ist. Führen Sie eine vollständige Datenbanksicherung durch, indem Sie BACKUP DATABASE erneut ausführen und die Option WITH DIFFERENTIAL weglassen.

Das Problem ist, dass ich zu 100 % sicher bin, dass ich ein vollständiges Backup habe, weil ich es gerade doppelt überprüft habe. Nur einmal konnte ich ein Diff-Backup erstellen, und zwar direkt nach dem Erstellen eines vollständigen Backups.

Ich habe herumgesucht und festgestellt, dass dies ziemlich häufig vorkommt (allerdings hauptsächlich bei SQL 2005). Eine Lösung, die viele Leute vorschlagen und die ich noch nicht ausprobiert habe, besteht darin, den SQL Server VSS Writer-Dienst zu deaktivieren. Das Problem dabei ist, dass erstens ich glaube, dass ich diesen Dienst brauche, da ich eine Backup-Software eines Drittanbieters verwende, und dass ich zweitens nicht genau weiß, was der Dienst macht, und ihn nicht einfach so deaktivieren möchte.

Hat jemand von Ihnen schon einmal dieses Problem gehabt und wie haben Sie es behoben?

Danke schön,

Antwort1

Führen Sie VSS-Backups auf dem Server (NTbackup, BE usw.) für andere Dinge als die SQL-Daten aus? LautDas, die SQL-Differenzsicherungen können ungültig werden, wenn eine Sicherungssoftware VSS für Snapshots verwendet.

Soweit ich weiß, verwendet LS nicht VSS, wie Nick sagte. Lautdieser ThreadDie Lösung bestand darin, den SQL Writer-Dienst zu deaktivieren.

Aktualisierung basierend auf Kommentaren:

Da Sie NTbackup zum Sichern anderer Dateien auf dem Server verwenden, besteht die Lösung darin, den SQL Writer-Dienst zu deaktivieren.

Wenn NTbackup ausgeführt wird, ruft esALLEdie verfügbaren VSS-Writer, auch wenn Sie sie nicht benötigen. Das bedeutet, dass der SQL-Writer die Datenbank in einen konsistenten Zustand versetzt (Cache auf Festplatte leeren), während der Snapshot erstellt wird. Die Datenbank denkt dann, sie sei gesichert worden, auch wenn Sie die Informationen nicht aus der Schattenkopie kopiert haben. Das ist es, was Ihre Backups kaputt macht.

Sie können beispielsweise im SQL-Protokoll nachsehen (ich glaube, es ist im Fehlerprotokoll), ob VSS gegen die Datenbanken läuft (was ich mir sicher bin und die Kette unterbricht). Während der Ausführung Ihrer NTbackup-Jobs sollten Freeze-/Thaw-Ereignisse angezeigt werden.

Antwort2

es ist ein paar Jahre her, seit ich Lightspeed verwendet habe, also hat sich das vielleicht geändert, aber bietet Lightspeed nicht seine eigenen erweiterten gespeicherten Prozeduren zum Durchführen von Backups? In diesem Fall sollten Sie diese aufrufen, um eine Differenzierung durchzuführen. Sie sollten wahrscheinlich nicht die nativen BACKUP DATABASE-Befehle aufrufen. Ich glaube nicht, dass Sie native/Lightspeed-Backups mischen und anpassen können.

Ich habe versucht, in der Online-Produktdokumentation von Quest herumzustöbern, aber leider muss man dazu Kunde sein.

Wenn Sie aus Sicht nativer Backups von SQL Server noch nie ein vollständiges Backup erstellt haben, können Sie kein differenzielles Backup erstellen.

Der VSS-Dienst ermöglicht Dateisicherungen von SQL Servern über Volume Shadow Copy. Wenn Sie Lightspeed für Sicherungen verwenden und das SQL Server-Verzeichnis von Sicherungen auf Serverebene (Betriebssystem) ausschließen, ist es wahrscheinlich in Ordnung, dies auszuschalten. Dies hat wahrscheinlich nichts damit zu tun, dass keine differenziellen Sicherungen durchgeführt werden können.

Behebt ein Neustart der SQL Server-Instanz das Problem? Wenn ja, sollten Sie sich überlegen, ob Sie den Memtoleave-Wert von SQL Server erhöhen.Schau dir das an.

Antwort3

Der häufigste Grund für das Auftreten dieses Problems liegt darin, dass Sie eine andere Sicherungssoftware (NTBackup, BE, Bacula usw.) verwenden, die einen Snapshot (VSS-Kopien – Volume Shadow Copy) Ihrer Datenbank erstellt. Dadurch kann die Sicherungskette unterbrochen werden und Ihre vorherigen differenziellen Sicherungen werden ungültig. Daher schlägt Ihr aktueller differenzieller Sicherungsvorgang beim Starten fehl, da er nicht erkennen kann, dass zuvor eine erste VOLLSTÄNDIGE Sicherung oder eine andere differenzielle Sicherung durchgeführt wurde.

Zunächst müssen Sie herausfinden, welches Softwaretool Snapshot-Backups Ihrer Datenbank erstellt, da es mehrere Möglichkeiten gibt, dieses Problem zu lösen. Betrachten wir den häufigsten Fall, bei dem Snapshot-Backups mithilfe von NTBackup erstellt werden. Die Lösung für NTBackup: Überprüfen Sie zunächst SQL Server VSS Writer im Menü „Dienste“. Es muss die folgenden Einstellungen haben: Starttyp: Manuell und der Dienst muss gestoppt sein. Wenn der SQL Server VSS Writer-Dienst ausgeführt wird und ein Snapshot erstellt wird, wird das vollständige Wiederherstellungsmodell blockiert und die Sicherungskette wird unterbrochen. Um die Einstellungen von SQL Server VSS Writer zu ändern, gehen Sie zum „Sternmenü“ und suchen Sie „Dienste“. Wählen Sie im geöffneten Fenster „SQL Server VSS Writer“ aus.

Klicken Sie mit der rechten Maustaste auf den Dienst und wählen Sie „Eigenschaften“. Stellen Sie im geöffneten Fenster den „Starttyp“ auf „Manuell“ ein, drücken Sie im Abschnitt „Dienststatus“ auf „Stopp“, um sicherzustellen, dass der Dienst nach dem Neustart Ihres Computers nicht automatisch ausgeführt wird, und klicken Sie auf „OK“, um alle Änderungen anzuwenden.

Antwort4

Ich hatte das gleiche Problem, allerdings mit Bacula, das sowohl Snapshots der Datenbank als auch meiner eigenen SQL Server-Backups erstellte. Es gab irgendeine Art von Fehler, der dies bei einer Teilmenge der Datenbanken auf dem Server verursachte, was sehr ärgerlich war. Letztendlich bestand meine Lösung darin, die Backup-Zeiten so zu ändern, dass nach dem Bacula-Backup ein SQL-Backup ausgeführt wurde, um sicherzustellen, dass die internen Flags des SQL-Servers korrekt zurückgesetzt wurden, um festzustellen, dass ein vollständiges Backup erstellt wurde. Das war im Jahr 2005 – ich vermute, dass die gleichen VDI-Probleme auch 2008 betreffen.

Als ReferenzHierwar meine frühere Frage.

verwandte Informationen