Erstellen einer vollständigen Datenbanksicherung (SQL Server)

In diesem Thema wird beschrieben, wie Sie in SQL Server 2012 mithilfe von SQL Server Management Studio, Transact-SQL oder PowerShell eine vollständige Datenbanksicherung erstellen.

HinweisHinweis

Ab dem kumulativen Update 2 für SQL Server 2012 SP1 werden SQL Server-Sicherungen im Windows Azure-BLOB-Speicherdienst unterstützt. Weitere Informationen finden Sie unter Backup and Restore Enhancements und SQL Server-Sicherung und -Wiederherstellung mit dem Windows Azure-BLOB-Speicherdienst.

In diesem Thema

  • Vorbereitungen:

    Einschränkungen

    Empfehlungen

    Sicherheit

  • Erstellen einer vollständigen Datenbanksicherung mit:

    SQL Server Management Studio

    Transact-SQL

    PowerShell

  • Verwandte Aufgaben

Vorbereitungen

Einschränkungen

  • Die BACKUP-Anweisung ist nicht in einer expliziten oder implizierten Transaktion zulässig.

  • Sicherungen, die mit aktuelleren Versionen von SQL Server erstellt werden, können in früheren Versionen von SQL Server nicht wiederhergestellt werden.

  • Weitere Informationen finden Sie unter Übersicht über Sicherungen [SQL Server].

Empfehlungen

  • Wenn eine Datenbank größer wird, ist zum Abschließen von vollständigen Datenbanksicherungen jedoch mehr Zeit und mehr Speicherplatz erforderlich. Deshalb können Sie bei einer großen Datenbank eine vollständige Datenbanksicherung durch mehrere differenzielle Datenbanksicherungen ergänzen. Weitere Informationen finden Sie unter Differenzielle Sicherungen (SQL Server).

  • Ein Schätzwert der Größe einer vollständigen Datenbanksicherung kann mithilfe der gespeicherten Systemprozedur sp_spaceused ermittelt werden.

  • Standardmäßig wird bei jedem erfolgreichen Sicherungsvorgang dem SQL Server-Fehlerprotokoll und dem Systemereignisprotokoll ein Eintrag hinzugefügt. Wenn Sie das Protokoll regelmäßig sichern, kann die Anzahl dieser Erfolgsmeldungen schnell ansteigen, d. h., es entstehen sehr große Fehlerprotokolle, die das Suchen nach anderen Meldungen erschweren können. In solchen Fällen können Sie diese Protokolleinträge mithilfe des Ablaufverfolgungsflags 3226 unterdrücken, wenn keines der Skripts von diesen Einträgen abhängig ist. Weitere Informationen finden Sie unter Ablaufverfolgungsflags (Transact-SQL).

Sicherheit

Bei einer Datenbanksicherung ist TRUSTWORTHY auf OFF festgelegt. Informationen zum Festlegen von TRUSTWORTHY auf ON finden Sie unter ALTER DATABASE SET-Optionen (Transact-SQL).

Ab SQL Server 2012 werden die Optionen PASSWORD und MEDIAPASSWORD nicht mehr für die Erstellung von Sicherungen verwendet. Sie können jedoch immer noch mit Kennwörtern erstellte Sicherungen wiederherstellen.

Berechtigungen

Mitglieder der festen Serverrolle sysadmin und der festen Datenbankrollen db_owner und db_backupoperator verfügen standardmäßig über BACKUP DATABASE- und BACKUP LOG-Berechtigungen.

Besitz- und Berechtigungsprobleme im Zusammenhang mit der physischen Datei des Sicherungsmediums können den Sicherungsvorgang beeinträchtigen. SQL Server muss über Lese- und Schreibberechtigungen für das Medium verfügen. Das Konto, unter dem der SQL Server-Dienst ausgeführt wird, muss Schreibberechtigungen haben. 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.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Nach oben]

SQL Server Management Studio

HinweisHinweis

Wenn Sie mithilfe von SQL Server Management Studio eine Sicherungstask angeben, können Sie das entsprechende Transact-SQL BACKUP-Skript generieren, indem Sie auf die Schaltfläche Skript klicken und ein Ziel für das Skript auswählen.

So sichern Sie eine Datenbank

  1. Klicken Sie im Objekt-Explorer nach dem Herstellen einer Verbindung mit der entsprechenden Instanz von Microsoft SQL Server Database Engine (Datenbankmodul) auf den Servernamen, um die Serverstruktur zu erweitern.

  2. Erweitern Sie den Ordner Datenbanken, und wählen Sie dann je nach Datenbank entweder eine Benutzerdatenbank aus, oder erweitern Sie die Option Systemdatenbanken, um eine Systemdatenbank auszuwählen.

  3. Klicken Sie mit der rechten Maustaste auf die Datenbank, zeigen Sie auf Tasks, und klicken Sie dann auf Sichern. Das Dialogfeld Datenbank sichern wird angezeigt.

  4. Überprüfen Sie den Datenbanknamen im Listenfeld Datenbank. Sie können optional eine andere Datenbank aus der Liste auswählen.

  5. Eine Datenbanksicherung kann für jedes Wiederherstellungsmodell ausgeführt werden (FULL, BULK_LOGGED oder SIMPLE).

  6. Wählen Sie im Listenfeld Sicherungstyp die Option Vollständig aus.

    Beachten Sie, dass Sie nach dem Erstellen einer vollständigen Datenbanksicherung eine differenzielle Datenbanksicherung ausführen können. Weitere Informationen finden Sie unter Erstellen einer differenziellen Datenbanksicherung (SQL Server).

  7. Sie können auch Kopiesicherung auswählen, um eine Kopiesicherung zu erstellen. Eine Kopiesicherung ist eine SQL Server-Sicherung, die unabhängig von der Sequenz von herkömmlichen SQL Server-Sicherungen erstellt wird. Weitere Informationen finden Sie unter Kopiesicherungen [SQL Server].

    HinweisHinweis

    Wenn die Option Differenziell aktiviert ist, können Sie keine Kopiesicherung erstellen.

  8. Klicken Sie unter Sicherungskomponente auf Datenbank.

  9. Akzeptieren Sie entweder den im Textfeld Name vorgeschlagenen Standardnamen für den Sicherungssatz, oder geben Sie einen anderen Namen für den Sicherungssatz ein.

  10. Geben Sie optional in das Textfeld Beschreibung eine Beschreibung des Sicherungssatzes ein.

  11. Geben Sie an, wann der Sicherungssatz abläuft und überschrieben werden kann, ohne die Überprüfung der Ablaufdaten explizit auszulassen:

    • Wenn der Sicherungssatz nach einer bestimmten Anzahl von Tagen ablaufen soll, klicken Sie auf Nach (die Standardoption), und geben Sie an, nach wie vielen Tagen der Sicherungssatz abläuft. Dieser Wert kann zwischen 0 und 99999 Tagen betragen. Der Wert 0 Tage bedeutet, dass der Sicherungssatz niemals abläuft.

      Der Standardwert wird im Dialogfeld Servereigenschaften (Seite Datenbankeinstellungen) über die Option Standardbeibehaltung für Sicherungsmedien (in Tagen) festgelegt. Klicken Sie hierzu mit der rechten Maustaste auf den Servernamen im Objekt-Explorer, und wählen Sie Eigenschaften aus. Wählen Sie anschließend die Seite Datenbankeinstellungen aus.

    • Zum Speichern des Sicherungssatzes an einem bestimmten Datum klicken Sie auf Am, und geben Sie das Datum ein, an dem der Sicherungssatz abläuft.

      Weitere Informationen zum Ablaufdatum von Sicherungen finden Sie unter BACKUP (Transact-SQL).

  12. Wählen Sie den Sicherungszieltyp aus, indem Sie auf Datenträger oder Band klicken. 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.

  13. Zum Anzeigen oder Auswählen der erweiterten Optionen klicken Sie auf Optionen im Bereich Seite auswählen.

  14. Wählen Sie eine Option von Medium überschreiben aus, indem Sie auf eine der folgenden Optionen klicken:

    • Auf vorhandenen Mediensatz sichern

      Klicken Sie bei dieser Option entweder auf An vorhandenen Sicherungssatz anfügen oder auf Alle vorhandenen Sicherungssätze überschreiben. Weitere Informationen finden Sie unter Mediensätze, Medienfamilien und Sicherungssätze (SQL Server).

      Sie können bei Bedarf das Kontrollkästchen Mediensatznamen und Ablaufzeit des Sicherungssatzes überprüfen aktivieren, damit beim Sicherungsvorgang das Datum und die Uhrzeit überprüft werden, an dem bzw. zu der der Mediensatz und der Sicherungssatz ablaufen.

      Geben Sie optional einen Namen im Textfeld Mediensatzname ein. Wenn kein Name angegeben wird, wird ein Mediensatz mit einem leeren 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.

    • Auf 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.

  15. Aktivieren Sie im Abschnitt Zuverlässigkeit optional folgende Kontrollkästchen:

  16. 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.

    HinweisHinweis

    Die Optionen im Bereich Transaktionsprotokoll sind nur aktiviert, wenn Sie ein Transaktionsprotokoll sichern (laut Angabe im Bereich Sicherungstyp auf der Seite Allgemein).

  17. In SQL Server 2008 Enterprise und höheren Versionen wird die Sicherungskomprimierung unterstützt. 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 komprimieren aktivieren bzw. die Komprimierung unterdrücken, indem Sie die Option Sicherung nicht komprimieren aktivieren.

    So zeigen Sie die aktuelle Standardeinstellung für die Sicherungskomprimierung an oder ändern sie

HinweisHinweis

Alternativ können Sie den Wartungsplanungs-Assistenten zum Erstellen von Datenbanksicherungen verwenden.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Nach oben]

Transact-SQL

So erstellen Sie eine vollständige Datenbanksicherung

  1. Führen Sie die BACKUP DATABASE-Anweisung aus, um die vollständige Datenbanksicherung zu erstellen, und geben Sie dabei Folgendes an:

    • Den Namen der zu sichernden Datenbank.

    • Das Sicherungsmedium, auf das die vollständige Datenbanksicherung geschrieben wird.

    Die grundlegende Transact-SQL-Syntax zum Erstellen einer vollständigen Datenbanksicherung lautet:

    BACKUP DATABASE database

    TO backup_device [ ,...n ]

    [ WITH with_options [ ,...o ] ] ;

    Option

    Beschreibung

    database

    Die Datenbank, für die eine Sicherungskopie erstellt werden soll.

    backup_device [ ,...n ]

    Gibt eine Liste an, die zwischen 1 und 64 Sicherungsmedien für den Sicherungsvorgang enthalten kann. Sie können ein physisches Sicherungsmedium angeben oder ein entsprechendes logisches Sicherungsmedium, sofern es bereits definiert wurde. Geben Sie das physische Sicherungsmedium mithilfe der Option DISK oder TAPE an:

    { DISK | TAPE } = physical_backup_device_name

    Weitere Informationen finden Sie unter Sicherungsmedien (SQL Server).

    WITH with_options [ ,...o ]

    Optional werden eine oder mehrere zusätzliche Optionen angegeben, o. Weitere Informationen zu einigen der grundlegenden Optionen finden Sie unter Schritt 2.

  2. Geben Sie optional eine oder mehrere WITH-Optionen an. Einige der grundlegenden WITH-Optionen werden hier beschrieben. Weitere Informationen zu allen WITH-Optionen finden Sie unter BACKUP (Transact-SQL).

    • Grundlegender Sicherungssatz von WITH-Optionen:

      • { COMPRESSION | NO_COMPRESSION }
        Nur in SQL Server 2008 Enterprise und höher verfügbar. Gibt an, ob für diese Sicherung eine Sicherungskomprimierung verwendet wird, wodurch die Standardeinstellung auf Serverebene überschrieben wird.

      • DESCRIPTION = { 'text' | @text_variable }
        Gibt den Text an, mit dem der Sicherungssatz beschrieben wird. Die Zeichenfolge kann maximal 255 Zeichen haben.

      • NAME = { backup_set_name | @backup_set_name_var}
        Gibt den Namen des Sicherungssatzes an. Namen können maximal 128 Zeichen haben. Wird NAME nicht angegeben, erhält der Sicherungssatz einen leeren Namen.

    • Grundlegender Sicherungssatz von WITH-Optionen:

      Standardmäßig fügt BACKUP die Sicherung einem vorhandenen Mediensatz an, wobei vorhandene Sicherungssätze beibehalten werden. Verwenden Sie die NOINIT-Option, um dies explizit anzugeben. Informationen zum Anfügen bestehender Sicherungssätze finden Sie unter Mediensätze, Medienfamilien und Sicherungssätze (SQL Server).

      Verwenden Sie alternativ die FORMAT-Option, um die Sicherungsmedien zu formatieren:

      • FORMAT [ , MEDIANAME = { media_name | @media_name_variable } ] [ , MEDIADESCRIPTION = { text | @text_variable } ]
        Verwenden Sie die FORMAT-Klausel, wenn Sie das Medium das erste Mal einsetzen oder alle vorhandenen Daten überschreiben möchten. Weisen Sie den neuen Medien optional einen Mediennamen und eine Beschreibung zu.

        Wichtiger HinweisWichtig

        Gehen Sie mit den FORMAT- und INIT-Klauseln der BACKUP-Anweisung äußerst vorsichtig um, denn sie zerstören alle zuvor auf dem Sicherungsmedium gespeicherten Sicherungen.

Beispiele (Transact-SQL)

A.Sichern auf ein Datenträgermedium

In diesem Beispiel wird die gesamte AdventureWorks2012 -Datenbank auf dem Datenträger gesichert, wobei mithilfe von FORMAT ein neuer Mediensatz erstellt wird.

USE AdventureWorks2012;
GO
BACKUP DATABASE AdventureWorks2012
TO DISK = 'Z:\SQLServerBackups\AdventureWorks2012.Bak'
   WITH FORMAT,
      MEDIANAME = 'Z_SQLServerBackups',
      NAME = 'Full Backup of AdventureWorks2012';
GO

B.Sichern auf ein Bandmedium

Im folgenden Beispiel wird die gesamte AdventureWorks2012 -Datenbank auf Band gesichert, wobei die Sicherung an vorherige Sicherungen angefügt wird.

USE AdventureWorks2012;
GO
BACKUP DATABASE AdventureWorks2012
   TO TAPE = '\\.\Tape0'
   WITH NOINIT,
      NAME = 'Full Backup of AdventureWorks2012';
GO

C.Sichern auf ein logisches Bandmedium

Im folgenden Beispiel wird ein logisches Sicherungsmedium für ein Bandlaufwerk erstellt. Im Beispiel wird dann die AdventureWorks2012 -Datenbank vollständig auf diesem Medium gesichert.

-- Create a logical backup device, 
-- AdventureWorks2012_Bak_Tape, for tape device \\.\tape0.
USE master;
GO
EXEC sp_addumpdevice 'tape', 'AdventureWorks2012_Bak_Tape', '\\.\tape0'; 
USE AdventureWorks2012;
GO
BACKUP DATABASE AdventureWorks2012
   TO AdventureWorks2012_Bak_Tape
   WITH FORMAT,
      MEDIANAME = 'AdventureWorks2012_Bak_Tape',
      MEDIADESCRIPTION = '\\.\tape0', 
      NAME = 'Full Backup of AdventureWorks2012';
GO

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Nach oben]

PowerShell

  1. Verwenden Sie das Backup-SqlDatabase-Cmdlet. Um ausdrücklich anzugeben, dass dies eine vollständige Datenbanksicherung ist, geben Sie den -BackupAction -Parameter mit dessen Standardwert Database an. Dieser Parameter ist bei vollständigen Datenbanksicherungen optional.

    Im folgenden Beispiel wird eine vollständige Datenbanksicherung der MyDB-Datenbank am standardmäßigen Sicherungsspeicherort der Serverinstanz Computer\Instance erstellt. Optional wird im Beispiel -BackupAction Database angegeben.

    --Enter this command at the PowerShell command prompt, C:\PS>
    Backup-SqlDatabase -ServerInstance Computer\Instance -Database MyDB -BackupAction Database
    

Einrichten und Verwenden des SQL Server PowerShell-Anbieters

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Nach oben]

Verwandte Aufgaben

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Nach oben]

Siehe auch

Verweis

sp_addumpdevice (Transact-SQL)

BACKUP (Transact-SQL)

Datenbank sichern (Seite Allgemein)

Datenbank sichern (Seite Optionen)

Konzepte

Übersicht über Sicherungen [SQL Server]

Transaktionsprotokollsicherungen (SQL Server)

Mediensätze, Medienfamilien und Sicherungssätze (SQL Server)

Differenzielle Sicherungen (SQL Server)

Vollständige Datenbanksicherungen (SQL Server)