Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So sichern Sie eine SQL Server-Datenbank mit T-SQL

Sie können die T-SQL BACKUP DATABASE verwenden -Anweisung zum Sichern einer beliebigen SQL Server-Datenbank.

Dieser Artikel zeigt Ihnen, wie Sie eine Datenbank auf einem Datenträger sichern. Dadurch wird eine .bak-Datei erstellt, die später bei Bedarf zur Wiederherstellung der Datenbank verwendet werden kann.

Erstellen Sie eine vollständige Sicherung

Hier ist ein einfaches Beispiel für das Erstellen einer vollständigen Sicherung einer SQL Server-Datenbank auf der Festplatte:

BACKUP DATABASE Movies  
TO DISK = 'Z:\mssql\backups\Movies.bak';

Dieses Beispiel erstellt eine vollständige Sicherung der Filmdatenbank in einer Datei auf der Festplatte. Dieses Beispiel verwendet einen Speicherort auf dem Z-Laufwerk, aber der Pfad kann beliebig sein. Die Datenbank sollte auf einem anderen Laufwerk als dem für die eigentliche Datenbank verwendeten gesichert werden. Auf diese Weise verlieren Sie bei einem Festplattenausfall nicht Ihre Sicherungsdatei zusammen mit der Datenbank.

Das folgende Beispiel macht dasselbe, aber dieses Beispiel verwendet Linux- und Mac-Dateipfadsyntax:

BACKUP DATABASE Movies  
TO DISK = '/var/opt/mssql/backups/Movies.bak';

Erstellen Sie eine differenzielle Sicherung

Nachdem Sie eine vollständige Sicherung erstellt haben, können Sie differenzielle Sicherungen erstellen. Bei einer differenziellen Sicherung werden nur Teile der Datenbank gesichert, die sich seit der Erstellung der letzten vollständigen Datenbanksicherung geändert haben.

Differentielle Sicherungen verkürzen die Zeit, die zum Sichern der Datenbank benötigt wird (da nur die Änderungen seit der letzten vollständigen Sicherung gesichert werden).

Um eine differenzielle Sicherung zu erstellen, verwenden Sie dieselbe BACKUP DATABASE -Anweisung, die Sie verwenden, um die vollständige Sicherung zu erstellen, außer dass Sie diesmal WITH DIFFERENTIAL hinzufügen Klausel.

Hier ist ein Beispiel:

BACKUP DATABASE Movies  
TO DISK = 'Z:\mssql\backups\Movies.bak'
WITH DIFFERENTIAL;

Wenn Sie diese Anweisung ausführen, wird die differenzielle Sicherung an die ursprüngliche Sicherungsdatei angehängt, die die vollständige Sicherung enthält.

Sichern Sie das Transaktionsprotokoll

Sie können auch das Transaktionsprotokoll sichern. Dies geschieht mit dem BACKUP LOG Aussage.

Hier ist ein Beispiel:

BACKUP LOG Movies  
TO DISK = 'Z:\mssql\backups\Movies_log.bak';