Freigeben über


Funktionsweise differenzieller Sicherungen

Dieses Thema ist für alle Arten von Datenbanken relevant.

Eine differenzielle Sicherung basiert auf der aktuellsten zuvor ausgeführten vollständigen Sicherung. Diese wird als differenzielle Basis bezeichnet. Eine differenzielle Sicherung enthält nur die Daten, die seit der Sicherung der differenziellen Basis geändert wurden.

Die Größe einer differenziellen Sicherung hängt von der Menge an Daten ab, die seit der Basissicherung geändert wurden. Grundsätzlich gilt: Je älter die Basis, desto größer die neue differenzielle Sicherung. Eine bestimmte differenzielle Sicherung erfasst den Zustand der Datenblöcke zu dem Zeitpunkt, an dem die Sicherung erstellt wird. Wenn Sie eine Reihe differenzieller Sicherungen erstellen, enthält ein häufig aktualisierter Block möglicherweise bei jeder differenziellen Sicherung unterschiedliche Daten. Mit zunehmender Größe der differenziellen Sicherungen kann das Wiederherstellen einer differenziellen Sicherung den Zeitaufwand zum Wiederherstellen einer Datenbank erheblich erhöhen. Daher sollten Sie in regelmäßigen Abständen neue vollständige Sicherungen ausführen, um eine neue differenzielle Basis für die Daten zu erstellen. Sie können z. B. einmal wöchentlich eine vollständige Sicherung der gesamten Datenbank (also eine vollständige Datenbanksicherung) und während der Woche eine regelmäßige Serie von differenziellen Datenbanksicherungen ausführen.

In der folgenden Abbildung wird die Funktionsweise einer differenziellen Sicherung veranschaulicht. Die Abbildung zeigt 24 Datenblöcke, von denen sechs geändert wurden. Die differenzielle Sicherung enthält nur diese sechs Datenblöcke. Der differenzielle Sicherungsvorgang basiert auf einer Bitmapseite, die für jeden Block ein Bit enthält. Für jeden seit der Basissicherung aktualisierten Block wird das Bit in der Bitmap auf 1 festgelegt.

Vom differenziellen Bitmuster werden geänderte Blöcke identifiziert

HinweisHinweis

Durch eine Kopiesicherung erfolgt keine Aktualisierung des differenziellen Bitmusters. Daher kann eine Kopiesicherung nicht als differenzielle Basis oder als differenzielle Sicherung dienen. Eine Kopiesicherung hat keine Auswirkungen auf die nachfolgenden differenziellen Sicherungen.

Eine differenzielle Sicherung wird relativ bald erstellt, nachdem die zugehörige Basis erheblich kleiner geworden ist als die differenzielle Basis. Hierdurch wird Speicherplatz gespart und der Zeitaufwand für die Sicherung reduziert. Im Laufe der Zeit wird aufgrund der in der Datenbank vorgenommenen Änderungen der Unterschied zwischen der Datenbank und einer bestimmten differenziellen Basis jedoch immer größer. Je mehr Zeit zwischen einer differenziellen Sicherung und der zugehörigen Basis liegt, desto umfangreicher wird die differenzielle Sicherung ausfallen. Dies bedeutet, dass letztendlich differenzielle Sicherungen nahezu die Größe der differenziellen Basis erreichen können. Bei einer großen differenziellen Sicherung geht der Vorteil des schnelleren Sicherns und des geringeren Umfangs verloren.

Beim Wiederherstellen müssen Sie die Basis wiederherstellen, bevor Sie eine differenzielle Sicherung wiederherstellen. Anschließend müssen Sie lediglich die letzte differenzielle Sicherung wiederherstellen, um die Datenbank auf den Stand dieser differenziellen Sicherung zu bringen. Normalerweise stellen Sie die letzte vollständige Sicherung und anschließend die letzte differenzielle Sicherung, die auf dieser vollständigen Sicherung basiert, wieder her.

SQL Server behandelt beim Erstellen und Wiederherstellen differenzieller Sicherungen die Datenbank als einen Satz von Dateien. Dies hat Auswirkungen auf den Inhalt differenzieller Sicherungen und deren Verwendung in Kombination mit Datenbank- und Dateisicherungen. SQL Server Database Engine (Datenbankmodul) ist so angelegt, dass gängige Szenarien einfach und ohne unerwartete Ergebnisse ausgeführt werden können.

Weitere Informationen finden Sie unter Basis einer differenziellen Sicherung.