Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:SQL Server
In diesem Thema wird beschrieben, wie ein Transaktionsprotokoll mithilfe von SQL Server Management Studio oder Transact-SQL gesichert wird, wenn die Datenbank in SQL Server beschädigt wird.
In diesem Thema
Vorbereitungen:
So sichern Sie das Transaktionsprotokoll, wenn die Datenbank beschädigt ist:
Bevor Sie beginnen
Beschränkungen und Einschränkungen
- Die BACKUP Anweisung ist in einer expliziten oder impliziten Transaktion nicht zulässig.
Empfehlungen
- Im Allgemeinen müssen Sie bei einer Datenbank, die entweder das vollständige oder das massiv protokollierte Wiederherstellungsmodell verwendet, vor dem Beginn der Wiederherstellung der Datenbank das Ende des Protokolls sichern. Sie sollten außerdem das Protokollendsegment der primären Datenbank sichern, bevor Sie ein Failover für eine Protokollversandkonfiguration durchführen. Das Sichern des Protokollfragments als abschließende Protokollsicherung vor dem Wiederherstellen der Datenbank vermeidet den Datenverlust nach einem Fehler. Weitere Informationen zu Sicherungen des Protokollfragments finden Sie unter Protokollfragmentsicherungen (SQL Server).
Sicherheit
Berechtigungen
BACKUP DATABASE und BACKUP LOG-Berechtigungen sind standardmäßig Mitgliedern der festen Serverrolle sysadmin sowie der festen Datenbankrollen db_owner und db_backupoperator zugewiesen.
Besitz- und Berechtigungsprobleme im Zusammenhang mit der physischen Datei des Sicherungsmediums können den Sicherungsvorgang beeinträchtigen. SQL Server muss auf das Gerät lesen und auf dieses schreiben können; das Konto, unter dem der SQL Server-Dienst ausgeführt wird, muss über Schreibberechtigungen verfügen. Allerdings prüft die gespeicherte Prozedur sp_addumpdevice, die den Systemtabellen einen Eintrag für ein Sicherungsmedium hinzufügt, nicht die Dateizugriffsberechtigungen. Solche Probleme mit der physischen Datei des Sicherungsmediums treten möglicherweise erst auf, wenn auf die physische Ressource zugegriffen wird, um einen Sicherungs- oder Wiederherstellungsvorgang auszuführen.
Verwendung von SQL Server Management Studio
Sichern des Endes des Transaktionsprotokolls
Klicken Sie nach dem Herstellen einer Verbindung mit der entsprechenden Instanz des Microsoft SQL Server-Datenbankmoduls im Objekt-Explorer auf den Servernamen, um die Serverstruktur zu erweitern.
Erweitern Sie Datenbanken, und wählen Sie je nach Datenbank eine Benutzerdatenbank aus, oder erweitern Sie Systemdatenbanken, und wählen Sie eine Systemdatenbank aus.
Klicken Sie mit der rechten Maustaste auf die Datenbank, zeigen Sie auf Tasks, und klicken Sie dann auf Sicherung. Das Dialogfeld Datenbank sichern wird angezeigt.
Überprüfen Sie den Datenbanknamen im Listenfeld Datenbank . Sie können optional eine andere Datenbank aus der Liste auswählen.
Überprüfen Sie, ob als Wiederherstellungsmodell entweder FULL oder BULK_LOGGEDausgewählt wurde.
Wählen Sie im Listenfeld Sicherungstyp den Eintrag Transaktionsprotokoll aus.
Lassen Sie Nur Sicherung kopieren deaktiviert.
Akzeptieren Sie im Bereich Sicherungssatz entweder den im Textfeld Name vorgeschlagenen Standardnamen für den Sicherungssatz, oder geben Sie einen anderen Namen für den Sicherungssatz ein.
Geben Sie im Textfeld Beschreibung eine Beschreibung für die Sicherung des Protokollfragments ein.
Geben Sie an, wann der Sicherungssatz ablaufen soll:
Um den Sicherungssatz nach einer bestimmten Anzahl von Tagen ablaufen zu lassen, klicken Sie auf After (die Standardoption), und geben Sie die Anzahl der Tage nach der Erstellung des Sicherungssatzes ein, bis der Satz abläuft. Dieser Wert kann zwischen 0 und 99999 Tagen liegen. Ein Wert von 0 Tagen bedeutet, dass der Sicherungssatz nicht abläuft.
Der Standardwert wird im Dialogfeld Servereigenschaften (Seite Datenbankeinstellungen ) über die OptionStandardbeibehaltung für Sicherungsmedien (in Tagen) festgelegt. Klicken Sie zum Zugreifen auf dieses Dialogfeld im Objekt-Explorer mit der rechten Maustaste auf den Servernamen, und wählen Sie „Eigenschaften“ aus. Wählen Sie anschließend die Seite Datenbankeinstellungen aus.
Damit der Sicherungssatz an einem bestimmten Datum abläuft, klicken Sie auf Am und geben Sie das Datum ein, an dem der Satz abläuft.
Wählen Sie den Sicherungszieltyp aus, indem Sie auf Datenträger oder Bandklicken. Klicken Sie auf Hinzufügen, um die Pfade von bis zu 64 Datenträgern oder Bandlaufwerken, die einen einzelnen Mediensatz enthalten, auszuwählen. Die ausgewählten Pfade werden im Listenfeld Sichern auf angezeigt.
Um ein Sicherungsziel zu entfernen, wählen Sie es aus und klicken Sie auf Entfernen. Zum Anzeigen des Inhalts eines Sicherungsziels wählen Sie es aus, und klicken Sie auf Inhalt.
Wählen Sie auf der Seite Optionen durch Anklicken einer der folgenden Optionen eine Medien überschreiben-Option aus:
Im vorhandenen Mediensatz sichern
Klicken Sie bei dieser Option entweder auf An vorhandenen Sicherungssatz anfügen oder auf Alle vorhandenen Sicherungssätze überschreiben.
Optional können Sie das Kontrollkästchen Mediensatzname und Ablaufdatum des Sicherungssatzes überprüfen aktivieren, sodass beim Sicherungsvorgang das Datum und die Uhrzeit überprüft werden, zu denen der Mediensatz und der Sicherungssatz ablaufen.
Geben Sie optional einen Namen im Textfeld Mediensatzname ein. Wenn kein Name angegeben wurde, wird ein Mediensatz mit leerem Namen erstellt. Wenn Sie einen Mediensatznamen angeben, wird überprüft, ob der tatsächliche Name des Mediums (Band oder Datenträger) mit dem eingegebenen Namen übereinstimmt.
Wenn Sie den Mediennamen leer lassen und das Kontrollkästchen aktivieren, um ihn anhand des Mediums zu überprüfen, ist die Prüfung erfolgreich, wenn der Medienname auf dem Medium ebenfalls leer ist.
Auf einen neuen Mediensatz sichern und alle vorhandenen Sicherungssätze löschen
Geben Sie bei dieser Option einen Namen in das Textfeld Name für neuen Mediensatz und optional eine Beschreibung des Mediensatzes in das Textfeld Beschreibung für neuen Mediensatz ein.
Weitere Informationen über Mediensätze finden Sie unter Mediensätze, Medienfamilien und Sicherungssätze (SQL Server).
Im Bereich Zuverlässigkeit können Sie folgende Optionen aktivieren:
Backup nach Abschluss überprüfen.
Prüfsumme vor dem Schreiben auf das Medium berechnen
Bei Prüfsummenfehlern fortfahren
Weitere Informationen zu Prüfsummen finden Sie unter Mögliche Medienfehler während der Sicherung und Wiederherstellung (SQL Server).
Aktivieren Sie im Abschnitt Transaktionsprotokoll das Kontrollkästchen Das Ende des Protokolls sichern und die Datenbank im Status „Wird wiederhergestellt“ belassen.
Dies entspricht der Angabe der folgenden BACKUP Anweisung:
BACKUP LOG <database_name> TO <backup_device> WITH NORECOVERYWichtig
Bei der Wiederherstellung zeigt das Dialogfeld „Datenbank wiederherstellen“ den Typ einer Sicherung des Protokollendes als Transaktionsprotokoll (Nur Kopie) an.
Wenn Sie auf ein Bandlaufwerk sichern (gemäß der Konfiguration im Abschnitt Ziel der Seite Allgemein ), ist die Option Band nach dem Sichern entladen aktiviert. Wenn Sie auf diese Option klicken, wird die Option Band vor dem Entladen zurückspulen aktiviert.
SQL Server 2008 (10.0.x) Enterprise und höhere Versionen unterstützen die Sicherungskomprimierung. Ob eine Sicherung standardmäßig komprimiert wird, ist abhängig vom Wert der Serverkonfigurationsoption backup-compression default . Sie können jedoch unabhängig von der aktuellen Standardeinstellung auf Serverebene eine Sicherung komprimieren, indem Sie die Option Sicherung komprimierenaktivieren, oder die Komprimierung verhindern, indem Sie die Option Sicherung nicht komprimierenaktivieren.
Aktuelle Standardvorgabe für die Sicherungskomprimierung anzeigen
Verwenden von Transact-SQL
So erstellen Sie eine Sicherung des aktuell aktiven Transaktionsprotokolls
Führen Sie die BACKUP LOG-Anweisung aus, um das aktuell aktive Transaktionsprotokoll zu sichern, wobei Folgendes angegeben wird:
Den Namen der Datenbank, zu der das zu sichernde Transaktionsprotokoll gehört.
Das Sicherungsmedium, auf das die Transaktionsprotokollsicherung geschrieben wird.
Die NO_TRUNCATE-Klausel.
Mit dieser Klausel ist ein Sichern des aktiven Teils des Transaktionsprotokolls auch dann möglich, wenn nicht auf die Datenbank zugegriffen werden kann. Voraussetzung hierfür ist allerdings, dass auf die Transaktionsprotokolldateien zugegriffen werden kann und diese unbeschädigt sind.
Beispiel (Transact-SQL)
Hinweis
In diesem Beispiel wird AdventureWorks2025verwendet, das das einfache Wiederherstellungsmodell verwendet. Um Protokollsicherungen zu ermöglichen, wurde für die Datenbank vor dem Erstellen einer vollständigen Datenbanksicherung die Verwendung des vollständigen Wiederherstellungsmodells festgelegt. Weitere Informationen finden Sie unter Anzeigen oder Ändern des Wiederherstellungsmodells einer Datenbank (SQL Server).
In diesem Beispiel wird das derzeit aktive Transaktionsprotokoll bei einer beschädigten oder nicht erreichbaren Datenbank gesichert, sofern das Transaktionsprotokoll unbeschädigt und erreichbar ist.
BACKUP LOG AdventureWorks2022
TO MyAdvWorks_FullRM_log1
WITH NO_TRUNCATE;
GO
Siehe auch
Wiederherstellen einer Transaktionsprotokollsicherung (SQL Server)
Wiederherstellen einer SQL Server-Datenbank zu einem Zeitpunkt (vollständiges Wiederherstellungsmodell)
Datenbank sichern (Seite „Sicherungsoptionen“)
Datenbank sichern (Seite „Allgemein“)
Anwenden von Transaktionsprotokollsicherungen (SQL Server)
BACKUP (Transact-SQL)
Dateiwiederherstellungen (einfaches Wiederherstellungsmodell)
Dateiwiederherstellungen (vollständiges Wiederherstellungsmodell)