Wiederherstellen einer Datenbank in der Masterinstanz eines Big Data-Clusters für SQL Server

Gilt für: SQL Server 2019 (15.x)

In diesem Artikel wird beschrieben, wie eine vorhandene Datenbank in der Masterinstanz eines SQL Server 2019: Big Data-Cluster wiederhergestellt wird. Die empfohlene Methode besteht darin, einen Ansatz mit Sichern, Kopieren und Wiederherstellen zu verwenden.

Wichtig

Das Microsoft SQL Server 2019-Big Data-Cluster-Add-On wird eingestellt. Der Support für SQL Server 2019-Big Data-Clusters endet am 28. Februar 2025. Alle vorhandenen Benutzer*innen von SQL Server 2019 mit Software Assurance werden auf der Plattform vollständig unterstützt, und die Software wird bis zu diesem Zeitpunkt weiterhin über kumulative SQL Server-Updates verwaltet. Weitere Informationen finden Sie im Ankündigungsblogbeitrag und unter Big Data-Optionen auf der Microsoft SQL Server-Plattform.

Sichern Ihrer vorhandenen Datenbank

Sichern Sie zunächst Ihre vorhandene SQL Server-Datenbank aus SQL Server für Windows oder Linux. Verwenden Sie Standardsicherungsverfahren mit Transact-SQL oder mit einem Tool wie SQL Server Management Studio (SSMS).

In diesem Artikel ist gezeigt, wie Sie die AdventureWorks-Datenbank wiederherstellen, Sie können aber jede beliebige Datenbanksicherung verwenden.

Tipp

Laden Sie die AdventureWorks-Sicherung herunter.

Kopieren der Sicherungsdatei

Kopieren Sie die Sicherungsdatei in den SQL Server-Container im Masterinstanzpod des Kubernetes-Clusters.

kubectl cp <path to .bak file> master-0:/var/tmp/<.bak filename> -c mssql-server -n <name of your big data cluster>

Beispiel:

kubectl cp ~/Downloads/AdventureWorks2022.bak master-0:/var/tmp/AdventureWorks2022.bak -c mssql-server -n clustertest

Vergewissern Sie sich anschließend, dass die Sicherungsdatei in den Podcontainer kopiert wurde.

kubectl exec -it master-0 -n <name of your big data cluster> -c mssql-server -- bin/bash
cd /var/
ls /tmp
exit

Beispiel:

kubectl exec -it master-0 -n clustertest -c mssql-server -- bin/bash
cd /var/
ls /tmp
exit

Wiederherstellen der Sicherungsdatei

Stellen Sie im nächsten Schritt die Datenbanksicherung in der Masterinstanz von SQL Server wieder her. Wenn Sie eine Datenbanksicherung wiederherstellen, die unter Windows erstellt wurde, müssen Sie die Namen der Dateien ermitteln. Stellen Sie in Azure Data Studio eine Verbindung mit der Masterinstanz her, und führen Sie dieses SQL-Skript aus:

RESTORE FILELISTONLY FROM DISK='/tmp/<db file name>.bak'

Beispiel:

RESTORE FILELISTONLY FROM DISK='/tmp/AdventureWorks2022.bak'

Sicherungsdateiliste

Stellen Sie die Datenbank nun wieder her. Das folgende Skript ist ein Beispiel. Ersetzen Sie die Namen/Pfade entsprechend den Anforderungen Ihrer Datenbanksicherung.

RESTORE DATABASE AdventureWorks2022
FROM DISK='/tmp/AdventureWorks2022.bak'
WITH MOVE 'AdventureWorks2022_Data' TO '/var/opt/mssql/data/AdventureWorks2022_Data.mdf',
        MOVE 'AdventureWorks2022_Log' TO '/var/opt/mssql/data/AdventureWorks2022_Log.ldf',
        MOVE 'AdventureWorks2022_mod' TO '/var/opt/mssql/data/AdventureWorks2022_mod'

Konfigurieren von Datenpool- und HDFS-Zugriff

Nun führen Sie, damit die SQL Server-Masterinstanz auf Datenpools und HDFS zugreifen kann, die gespeicherten Prozeduren für den Datenpool und den Speicherpool aus. Führen Sie die folgenden Transact-SQL-Skripts für Ihre neu wiederhergestellte Datenbank aus:

USE AdventureWorks2022;
GO
-- Create the SqlDataPool data source:
IF NOT EXISTS(SELECT * FROM sys.external_data_sources WHERE name = 'SqlDataPool')
  CREATE EXTERNAL DATA SOURCE SqlDataPool
  WITH (LOCATION = 'sqldatapool://controller-svc/default');

-- Create the SqlStoragePool data source:
IF NOT EXISTS(SELECT * FROM sys.external_data_sources WHERE name = 'SqlStoragePool')
   CREATE EXTERNAL DATA SOURCE SqlStoragePool
   WITH (LOCATION = 'sqlhdfs://controller-svc/default');
GO

Hinweis

Sie müssen diese Einrichtungsskripts nur für Datenbanken durchlaufen, die aus älteren Versionen von SQL Server wiederhergestellt wurden. Wenn Sie eine neue Datenbank in der SQL Server-Masterinstanz erstellen, sind die gespeicherten Prozeduren für den Datenpool und den Speicherpool bereits für Sie konfiguriert.

Nächste Schritte

Weitere Informationen zu Big Data-Cluster für SQL Server finden Sie in der folgenden Übersicht: