Backup-Übersicht (SQL Server)
Gilt für: SQL Server
In diesem Artikel wird die SQL Server-Sicherungskomponente vorgestellt. Die Sicherung der SQL Server-Datenbank ist wichtig für den Schutz Ihrer Daten. In dieser Diskussion werden Sicherungstypen und Sicherungseinschränkungen behandelt. Darüber hinaus bietet das Thema eine Einführung in SQL Server-Sicherungsmedien und -Sicherungsgeräte.
Begriffe
Sichern [Verb]: Kopiert die Daten oder Protokolldatensätze aus einer SQL Server-Datenbank oder aus deren Transaktionsprotokoll auf ein Sicherungsmedium, z. B. einen Datenträger, um eine Datensicherung oder Protokollsicherung zu erstellen.
Sicherung [Substantiv]: Eine Kopie der SQL Server-Daten, die zum Wiederherstellen der Daten nach einem Fehler verwendet werden kann. Eine Sicherung der SQL Server-Daten wird auf Datenbankebene für Dateien oder Dateigruppen erstellt. Sicherungen auf Tabellenebene können nicht erstellt werden. Zusätzlich zu Datensicherungen ist beim vollständigen Wiederherstellungsmodell die Erstellung von Sicherungen des Transaktionsprotokolls erforderlich.
Wiederherstellungsmodell: Eine Datenbankeigenschaft, die die Pflege der Transaktionsprotokolle auf einer Datenbank steuert. Es stehen drei Wiederherstellungsmodelle zur Verfügung: einfach, vollständig und massenprotokolliert. Das Wiederherstellungsmodell der Datenbank bestimmt die Sicherungs- und Wiederherstellungsanforderungen.
wiederherstellen: Ein aus mehreren Phasen bestehender Prozess, in dem alle Daten und Protokollseiten aus einer angegebenen SQL Server-Sicherung in eine angegebene Datenbank kopiert werden und ein Rollforward für alle Transaktionen ausgeführt wird, die in der Sicherung protokolliert sind. Dies wird erreicht, indem die Daten durch die Übernahme protokollierter Änderungen aktualisiert werden.
Sicherungsarten
Kopiesicherung: Eine Sicherung zur besonderen Verwendung, die unabhängig von der normalen Sequenz von SQL Server-Sicherungen erstellt wird.
Datensicherung: Eine Sicherung von Daten einer vollständigen Datenbank (Datenbanksicherung), einer partiellen Datenbank (partielle Sicherung) oder einem Satz von Datendateien oder Dateigruppen (Dateisicherung).
Datenbanksicherung: Eine Sicherung einer Datenbank. Vollständige Datenbanksicherungen stellen die gesamte Datenbank zum Zeitpunkt dar, an dem die Sicherung abgeschlossen wurde. Differenzielle Datenbanksicherungen enthalten nur Änderungen, die seit der letzten vollständigen Datenbanksicherung an der Datenbank vorgenommen wurden.
differenzielle Sicherung: Eine Datensicherung, die auf der letzten vollständigen Sicherung einer vollständigen oder partiellen Datenbank oder einem Satz von Datendateien oder Dateigruppen (differenzielle Basis) basiert und nur die Datenblöcke enthält, die sich seit der differenziellen Basis geändert haben.
Bei einer differenziellen Teilsicherung werden nur die Datenblöcke aufgezeichnet, die seit der vorherigen Teilsicherung geändert wurden, die als Basis der differenziellen Sicherung bezeichnet wird.
vollständige Sicherung: Eine Datensicherung, die alle Daten in einer bestimmten Datenbank oder einem Satz von Dateigruppen oder Dateien enthält. Außerdem muss die Sicherung genügend Protokolle enthalten, um die Wiederherstellung dieser Daten zu ermöglichen.
Protokollsicherung: Eine Sicherung der Transaktionsprotokolle, die alle Protokoll-Einträge umfasst, die nicht in einer vorherigen Protokollsicherung gesichert wurden (Vollwiederherstellungsmodell).
Dateisicherung: Eine Sicherung aller Datenbankdateien oder -dateigruppen.
Teilsicherung: Enthält Daten aus nur einigen der Dateigruppen in einer Datenbank, einschließlich Daten in der primären Dateigruppe, alle Dateigruppen mit Lese-/Schreibzugriff und aller optional angegebenen schreibgeschützten Dateien.
Sicherungsmedien – Begriffe und Definitionen
Sicherungsgerät: Ein Datenträger oder Bandmedium, auf den bzw. das SQL Server-Sicherungen geschrieben werden und von dem sie wiederhergestellt werden können. SQL Server-Sicherungen können auch in Azure Blob Storage geschrieben werden. Das URL-Format wird verwendet, um das Ziel und den Namen der Sicherungsdatei anzugeben. Weitere Informationen finden Sie unter SQL Server-Sicherung und -Wiederherstellung mit Microsoft Azure Blob Storage.
Sicherungsmedien: Bänder oder Datenträgerdateien, auf die Sicherungen geschrieben wurden.
Sicherungssatz: Der Sicherungsinhalt, der bei einem erfolgreichen Sicherungsvorgang einem Mediensatz hinzugefügt wird.
Medienfamilie: Sicherungen, die auf einem einzelnen, nicht gespiegelten Medium oder auf einem Satz gespiegelter Medien in einem Mediensatz erstellt wurden.
Mediensatz: Eine geordnete Auflistung von Sicherungsmedien, Bändern oder Dateien auf Datenträgern, die in mindestens einem Sicherungsvorgang mithilfe eines festen Typs sowie einer festen Anzahl von Sicherungsmedien beschrieben wurden.
gespiegelter Mediensatz: Mehrere Kopien (Spiegel) eines Mediensatzes.
Sicherungskomprimierung
SQL Server 2008 (10.0.x) Enterprise Edition und höhere Versionen unterstützen die Komprimierung von Sicherungen, und SQL Server 2008 (10.0.x) und höhere Versionen können eine komprimierte Sicherung wiederherstellen. SQL Server 2016 (13.x) Standard Edition und höhere Versionen unterstützen die Komprimierung von Sicherungen und das Wiederherstellen komprimierter Sicherungen. Weitere Informationen finden Sie unter Sicherungskomprimierung (SQL Server).
Einschränkungen für Sicherungsvorgänge
Eine Sicherung kann erfolgen, während die Datenbank online ist und verwendet wird. Dabei gelten jedoch folgende Einschränkungen:
Offline-Daten können nicht gesichert werden
Wenn im Rahmen eines Sicherungsvorgangs implizit oder explizit auf Offlinedaten verwiesen wird, tritt bei diesem Vorgang ein Fehler auf. Einige typische Fälle:
Sie fordern eine vollständige Datenbanksicherung an, wobei eine Dateigruppe der Datenbank offline ist. Da bei der vollständigen Datenbanksicherung implizit alle Dateigruppen berücksichtigt werden, ist der Vorgang fehlerhaft.
Zum Sichern dieser Datenbank können Sie eine Dateisicherung verwenden und nur die Dateigruppen angeben, die online sind.
Sie fordern eine Teilsicherung an, wobei eine Dateigruppe mit Lese-/Schreibzugriff offline ist. Da bei der Teilsicherung alle Dateigruppen mit Lese-/Schreibzugriff berücksichtigt werden müssen, tritt ein Fehler auf.
Sie fordern eine Sicherung bestimmter Dateien an, wobei eine Datei nicht online ist. Dabei tritt ein Fehler auf. Wenn Sie Onlinedateien sichern möchten, können Sie die Offlinedatei in der Dateiliste auslassen und den Vorgang wiederholen.
Im Allgemeinen wird eine Protokollsicherung erfolgreich ausgeführt, selbst wenn eine oder mehrere Datendateien nicht verfügbar sind. Wenn in einer Datei jedoch massenprotokollierte Änderungen enthalten sind, die im massenprotokollierten Wiederherstellungsmodell erfolgt sind, müssen alle Dateien online sein, damit die Sicherung erfolgreich ausgeführt werden kann.
Einschränkungen hinsichtlich der Parallelität
SQL Server verwendet einen Onlinesicherungsprozess, um das Ausführen einer Datenbanksicherung zu ermöglichen, während die Datenbank weiterhin verwendet wird. Bei einer Sicherung sind die meisten Vorgänge möglich, so sind z. B. die Anweisungen INSERT, UPDATE oder DELETE bei einem Sicherungsvorgang zulässig. Beim Versuch, einen Sicherungsvorgang zu starten, während eine Datenbankdatei erstellt oder gelöscht wird, wird der Sicherungsvorgang so lange verzögert, bis der Erstellungs- oder Löschvorgang abgeschlossen ist oder das Timeout für die Sicherung erreicht ist.
Folgende Vorgänge können nicht ausgeführt werden, während eine Datenbank oder ein Transaktionsprotokoll gesichert wird:
Dateiverwaltungsvorgänge, wie z. B. die
ALTER DATABASE
-Anweisung mit der OptionADD FILE
oderREMOVE FILE
.Vorgänge zum Verkleinern der Datenbank oder von Dateien. Dazu gehören auch Vorgänge zum automatischen Verkleinern.
Wenn Sie versuchen, eine Datenbankdatei während des Sicherungsvorgangs zu erstellen oder zu löschen, tritt beim Erstellungs- oder Löschvorgang ein Fehler auf.
Wenn sich ein Sicherungsvorgang mit einem Dateiverwaltungsvorgang oder einem Verkleinerungsvorgang überschneidet, tritt ein Konflikt auf. Unabhängig davon, welcher am Konflikt beteiligte Vorgang zuerst begonnen hat, wartet der zweite Vorgang auf das Timeout der Sperre, die vom ersten Vorgang festgelegt wurde. (Der Timeoutzeitraum wird durch eine Timeouteinstellung für die Sitzung gesteuert.) Wenn die Sperre während des Timeoutzeitraums aufgehoben wird, wird der zweite Vorgang fortgesetzt. Wenn das Timeout für die Sperre eintritt, erzeugt der zweite Vorgang einen Fehler.
Zugehörige Aufgaben
Sicherungsgeräte und -medien
- Definieren eines logischen Sicherungsmediums für eine Datenträgerdatei (SQL Server)
- Definieren eines logischen Sicherungsmediums für ein Bandlaufwerk (SQL Server)
- Angeben eines Datenträgers oder eines Bands als Sicherungsziel (SQL Server)
- Löschen eines Sicherungsmediums (SQL Server)
- Festlegen des Ablaufdatums für eine Sicherung (SQL Server)
- Anzeigen der Inhalte eines Sicherungsbands oder einer Sicherungsdatei (SQL Server)
- Anzeigen der Daten und Protokolldateien in einem Sicherungssatz (SQL Server)
- Anzeigen der Eigenschaften und des Inhalts eines logischen Sicherungsmediums (SQL Server)
- Wiederherstellung einer Sicherung von einem Medium (SQL Server)
- Schnellstart: Sichern und Wiederherstellen von SQL in Azure Blob Storage
So erstellen Sie eine Sicherung
Hinweis
Für Teilsicherungen oder Kopiesicherungen müssen Sie die Transact-SQL-Anweisung BACKUP mit der Option PARTIAL
bzw. COPY_ONLY
verwenden.
- Erstellen einer vollständigen Datenbanksicherung
- Sichern eines Transaktionsprotokolls
- Sichern von Dateien und Dateigruppen
- Erstellen einer differenziellen Datenbanksicherung (SQL Server)
- Sichern des Transaktionsprotokolls bei beschädigter Datenbank (SQL Server)
- Aktivieren oder Deaktivieren von Sicherungsprüfsummen bei der Sicherung oder Wiederherstellung (SQL Server)
- Angeben des Sicherungs- oder Wiederherstellungsvorgangs zum Fortsetzen oder Anhalten nach einem Fehler
- Einschränken der CPU-Nutzung durch die Sicherungskomprimierung mithilfe der Ressourcenkontrolle (Transact-SQL)
- Schnellstart: Sichern und Wiederherstellen von SQL in Azure Blob Storage