Sichern und Wiederherstellen von SQL Server-Datenbanken für Linux

Gilt für:SQL Server unter Linux

Es stehen viele verschiedene Optionen bereit, um Sicherungen von Datenbanken über SQL Server für Linux zu erstellen. Auf einem Linux-Server können Sie sqlcmd verwenden, um eine Verbindung mit SQL Server herzustellen und Sicherungen zu erstellen. Von Windows aus können Sie eine Verbindung mit SQL Server für Linux herstellen und Sicherungen über die Benutzeroberfläche erstellen. Die Sicherungsfunktionalität ist plattformübergreifend identisch. Sie können z. B. Datenbanken lokal, auf Remotelaufwerken oder mit SQL Server-Sicherung auf URL für Azure Blob Storage sichern.

Important

SQL Server für Linux unterstützt Sicherungen in Azure Blob Storage nur mit Blockblobs. Die Verwendung eines Speicherschlüssels für die Sicherung und Wiederherstellung führt zur Verwendung eines Seitenblobs, was nicht unterstützt wird. Verwenden Sie stattdessen eine Shared Access Signature. Weitere Informationen zu den Unterschieden zwischen Blockblobs und Seitenblobs finden Sie unter Sicherung: Blockblobs und Seitenblobs.

Sichern einer Datenbank

Im folgenden Beispiel stellt sqlcmd eine Verbindung mit der lokalen SQL-Server-Instanz her und erstellt eine vollständige Sicherung einer Benutzerdatenbank mit dem Namen demodb.

sqlcmd -S localhost -U sa -Q "BACKUP DATABASE [demodb] TO DISK = N'/var/opt/mssql/data/demodb.bak' WITH NOFORMAT, NOINIT, NAME = 'demodb-full', SKIP, NOREWIND, NOUNLOAD, STATS = 10"

Wenn Sie den Befehl ausführen, fordert SQL Server Sie auf, ein Kennwort einzugeben. Nachdem Sie das Kennwort eingegeben haben, gibt die Shell die Ergebnisse des Sicherungsstatus zurück. Beispiel:

Password:
10 percent processed.
21 percent processed.
32 percent processed.
40 percent processed.
51 percent processed.
61 percent processed.
72 percent processed.
80 percent processed.
91 percent processed.
Processed 296 pages for database 'demodb', file 'demodb' on file 1.
100 percent processed.
Processed 2 pages for database 'demodb', file 'demodb_log' on file 1.
BACKUP DATABASE successfully processed 298 pages in 0.064 seconds (36.376 MB/sec).

Sichern Sie das Transaktionsprotokoll

Wenn die Datenbank zum vollständigen Wiederherstellungsmodell gehört, können Sie auch Transaktionsprotokollsicherungen für differenziertere Wiederherstellungsoptionen erstellen. Im folgenden Beispiel stellt sqlcmd eine Verbindung mit der lokalen SQL-Server-Instanz her und erstellt eine Sicherung des Transaktionsprotokolls.

sqlcmd -S localhost -U sa -Q "BACKUP LOG [demodb] TO DISK = N'/var/opt/mssql/data/demodb_LogBackup.bak' WITH NOFORMAT, NOINIT, NAME = N'demodb_LogBackup', NOSKIP, NOREWIND, NOUNLOAD, STATS = 5"

Wiederherstellen einer Datenbank

Im folgenden Beispiel sqlcmd wird eine Verbindung mit der lokalen Instanz von SQL Server hergestellt und die Demodb-Datenbank wiederhergestellt. Die NORECOVERY-Option wird für zusätzliche Wiederherstellungen von Protokolldateisicherungen verwendet. Wenn Sie keine weiteren Protokolldateien wiederherstellen möchten, entfernen Sie die NORECOVERY-Option.

sqlcmd -S localhost -U sa -Q "RESTORE DATABASE [demodb] FROM DISK = N'/var/opt/mssql/data/demodb.bak' WITH FILE = 1, NOUNLOAD, REPLACE, NORECOVERY, STATS = 5"

Tip

Wenn Sie versehentlich NORECOVERY verwenden, aber keine zusätzlichen Protokolldateisicherungen haben, führen Sie den RESTORE DATABASE demodb-Befehl ohne zusätzliche Parameter aus. Dadurch wird die Wiederherstellung abgeschlossen, und die Datenbank bleibt funktionstüchtig.

Wiederherstellen des Transaktionsprotokolls

Der folgende Befehl stellt die vorherige Transaktionsprotokollsicherung wieder her.

sqlcmd -S localhost -U sa -Q "RESTORE LOG demodb FROM DISK = N'/var/opt/mssql/data/demodb_LogBackup.bak'"

Sichern und Wiederherstellen mit SSMS (SQL Server Management Studio)

Sie können SQL Server Management Studio (SSMS) von einem Windows-Computer verwenden, um eine Verbindung mit einer Linux-Datenbank herzustellen und eine Sicherung über die Benutzeroberfläche zu erstellen.

Note

Installieren Sie die neueste Version von SQL Server Management Studio (SSMS). Weitere Informationen wie Sie SSMS verwenden, finden Sie unter Verwenden von SQL Server Management Studio unter Windows zum Verwalten von SQL Server für Linux.

Die folgenden Schritte erläutern, wie Sie mit SSMS eine Sicherung erstellen.

  1. Starten Sie SSMS, und stellen Sie eine Verbindung mit Ihrer SQL Server-Instanz unter Linux her.

  2. Klicken Sie im Objekt-Explorer mit der rechten Maustaste auf die Datenbank, und wählen Sie Tasks und dann Sichern aus.

  3. Überprüfen Sie im Dialogfeld Datenbank sichern die Parameter und Optionen, und wählen Sie OK aus.

SQL Server schließt die Datenbanksicherung ab.

Wiederherstellen mit SSMS (SQL Server Management Studio)

Die folgenden Schritte führen Sie durch die Wiederherstellung einer Datenbank mit SSMS.

  1. Klicken Sie in SSMS mit der rechten Maustaste auf Datenbanken, und wählen Sie Datenbanken wiederherstellen aus.

  2. Wählen Sie unter QuelleGerät: aus und dann die Ellipsen (...).

  3. Suchen Sie die Datenbanksicherungsdatei, und wählen Sie OK aus.

  4. Überprüfen Sie unter Wiederherstellungsplan die Sicherungsdatei und die Einstellungen. Wählen Sie OK aus.

  5. SQL Server stellt die Datenbank wieder her.

Zur SQL-Dokumentation beitragen

Wussten Sie schon, dass Sie SQL-Inhalte selbst bearbeiten könnten? Wenn Sie dies tun, helfen Sie nicht nur, unsere Dokumentation zu verbessern, sondern werden Sie auch als Mitwirkender der Seite erwähnt.

Weitere Informationen finden Sie unter Edit Microsoft Learn documentation.