Freigeben über


Schnellstart: Wiederherstellen einer Datenbank zum Azure SQL Managed Instance mit SSMS

Gilt für:Azure SQL Managed Instance

In dieser Schnellstartanleitung verwenden Sie SQL Server Management Studio (SSMS), um eine Datenbank aus Azure Blob Storage in Azure SQL Managed Instance wiederherzustellen. Die Schnellstartanleitung stellt die Beispieldatenbank für Wide World Importers aus einer öffentlich verfügbaren Sicherungsdatei mithilfe eines SAS-Schlüssels (Shared Access Signature) wieder her.

Hinweis

Diese Schnellstartanleitung besteht darin, eine Datenbank wiederherzustellen, die manuell auf Azure Blob Storage gesichert wurde. Wenn Sie eine Wiederherstellung aus einer automatisierten Sicherung durchführen möchten, lesen Sie " Wiederherstellen einer Datenbank aus einer automatisierten Sicherung".

Voraussetzungen

Diese Schnellstartanleitung:

Verwenden von SSMS zum Wiederherstellen aus einer Sicherungsdatei

Führen Sie in SSMS die Schritte in den folgenden Abschnitten aus, um mithilfe des Assistenten Restore die Wide World Importers-Datenbank in der SQL Managed Instance wiederherzustellen. Die Datenbanksicherungsdatei wird in einem vorkonfigurierten Blob Storage Konto gespeichert.

Öffnen Sie den Wiederherstellungsassistenten

  1. Öffnen Sie SSMS, und stellen Sie eine Verbindung mit Ihrer SQL Managed Instance her.

  2. Klicken Sie in Objekt-Explorer mit der rechten Maustaste auf die Datenbank Ordner Ihrer verwalteten SQL-Instanz, und wählen Sie dann Datenbank speichern... , um den Assistenten Restore zu öffnen.

    Screenshot von Objekt-Explorer in SSMS. Der Ordner

Auswählen der Sicherungsquelle

  1. Wählen Sie im Wiederherstellungs-Assistenten die Auslassungspunkte (...) aus, um die Quelle des Sicherungssatzes auszuwählen, der wiederhergestellt werden soll.

    Screenshot einer Seite im Assistenten

  2. Wählen Sie unter Sicherungsmedien auswählen die Option Hinzufügen aus. Unter Sicherungsmedientyp ist URL die einzige Option, die zur Verfügung steht, da dies der einzige unterstützte Quelltyp ist. Wählen Sie OK aus.

    Screenshot: Dialogfeld „Sicherungsgeräte auswählen“. Die Schaltflächen „Hinzufügen“ und „OK“ sind hervorgehoben.

  3. Wählen Sie unter Speicherort der Sicherungsdatei auswählen eine der drei Optionen aus, um Informationen über den Speicherort Ihrer Sicherungsdateien bereitzustellen:

    • Wählen Sie einen vorab registrierten Speichercontainer aus der Liste Azure Speichercontainer aus.
    • Geben Sie einen neuen Speichercontainer und eine freigegebene Zugriffssignatur (SAS) ein. Neue SQL-Anmeldeinformationen werden für Sie registriert.
    • Wählen Sie Add aus, um weitere Speichercontainer aus Ihrem Azure-Abonnement zu durchsuchen.

    Screenshot des Dialogfelds

    Wenn Sie Hinzufügen auswählen, fahren Sie mit dem nächsten Abschnitt Azure Abonnement-Speichercontainer durchsuchen fort. Wenn Sie eine andere Methode verwenden, um den Speicherort der Sicherungsdateien anzugeben, können Sie zu Wiederherstellen der Datenbank springen.

    Um die Wide World Importers-Beispieldatenbank aus einem öffentlich zugänglichen Nur-Lese-Speicher wiederherzustellen, geben Sie den Wert https://mitutorials.blob.core.windows.net/examples/ und für das Feld Shared Access Signature einen beliebigen Wert, z. B. SAS, ein.

    Screenshot des Dialogs „Speicherort der Sicherungsdatei“ auswählen. Der Speicherort des Beispielordners WideWorldImporters ist angegeben. Auswählen ist rot umrandet.

Durchsuchen der Speichercontainer im Azure-Abonnement

Hinweis

Diese Schritte sind nicht erforderlich, um die WideWorldImporters Beispieldatenbank aus dem öffentlich zugänglichen schreibgeschützten Azure BLOB-Speicher wiederherzustellen, sind jedoch erforderlich, um Datenbanken aus Ihrem eigenen Azure BLOB-Speicher wiederherzustellen.

  1. Wählen Sie in Verbinden mit einem Microsoft-AbonnementSign in aus, um sich bei Ihrem Azure-Abonnement anzumelden.

    Screenshot des Dialogfelds

  2. Melden Sie sich bei Ihrem Microsoft-Konto an, um die Sitzung in Azure zu initiieren.

    Screenshot des Dialogfelds

  3. Wählen Sie das Abonnement des Speicherkontos aus, das die Sicherungsdateien enthält.

    Screenshot des Dialogfelds

  4. Wählen Sie das Speicherkonto aus, das die Sicherungsdateien enthält.

    Screenshot des Dialogfelds

  5. Wählen Sie den Blobcontainer aus, der die Sicherungsdateien enthält.

    Screenshot des Dialogfelds

  6. Geben Sie das Ablaufdatum der Freigaberichtlinie ein, und wählen Sie Anmeldeinformationen erstellen aus. Eine Shared Access Signature (SAS) mit den richtigen Berechtigungen wird erstellt. Wählen Sie OK aus.

    ‹c1›‹c0›‹sb0›Screenshot des Dialogfelds „Mit einem Microsoft-Abonnement verbinden“. Die Schaltflächen „Anmeldeinformationen erstellen“, „OK“ und das Feld für das Ablaufdatum der Freigaberichtlinie werden hervorgehoben.‹/sb0›‹/c0›‹/c1›

Wiederherstellen der Datenbank

Nachdem Sie nun einen Speichercontainer ausgewählt haben, sollte das Dialogfeld Locate Backup File im Dialogfeld Microsoft Azure angezeigt werden.

  1. Erweitern Sie im linken Bereich die Ordnerstruktur, um den Ordner anzuzeigen, der die Sicherungsdateien enthält. Wählen Sie im rechten Bereich alle Sicherungsdateien aus, die sich auf die wiederherzustellende Sicherungsgruppe beziehen, und wählen Sie dann OK aus. Der folgende Screenshot zeigt beispielsweise den öffentlich zugänglichen schreibgeschützten Blobspeicher mit der WideWorldImporters Beispieldatenbank.

    Screenshot des Dialogfelds

    SSMS überprüft den Sicherungssatz. Dieser Vorgang dauert höchstens ein paar Sekunden. Die Dauer hängt von der Größe des Sicherungssatzes ab.

  2. Wenn die Sicherung überprüft wird, müssen Sie einen Namen für die wiederherzustellende Datenbank angeben. Standardmäßig enthält das Feld Datenbank unter Ziel den Namen der Datenbank des Sicherungssatzes. Geben Sie einen neuen Namen für die Datenbank ein, um den Namen zu ändern. Wählen Sie OK aus.

    Screenshot einer Seite im Assistenten

    Der Wiederherstellungsvorgang wird gestartet. Die Dauer hängt von der Größe des Sicherungssatzes ab.

    Screenshot einer Seite im Assistenten

  3. Nach Abschluss des Vorgangs wird in einem Dialogfeld angezeigt, dass dieser erfolgreich war. Wählen Sie OK aus.

    Screenshot eines Dialogfelds über einer Seite im Assistenten

  4. Suchen Sie in Objekt-Explorer nach der wiederhergestellten Datenbank, indem Sie Refresh auswählen.

    Screenshot des Objekt-Explorers. Die wiederhergestellte Datenbank wird hervorgehoben.

Verwenden von T-SQL zur Wiederherstellung aus einer Sicherungsdatei

Als Alternative zum Wiederherstellungs-Assistenten können Sie T-SQL-Anweisungen verwenden, um eine Datenbank wiederherzustellen. Führen Sie in SSMS die folgenden Schritte aus, um die Wide World Importers-Datenbank mithilfe von T-SQL in SQL Managed Instance wiederherzustellen. Die Datenbanksicherungsdatei wird in einem vorkonfigurierten Blob Storage Konto gespeichert.

  1. Öffnen Sie SSMS, und stellen Sie eine Verbindung mit Ihrer SQL Managed Instance her.

  2. Klicken Sie in Objekt-Explorer mit der rechten Maustaste auf Ihre verwaltete SQL-Instanz, und wählen Sie Neue Abfrage aus, um ein neues Abfragefenster zu öffnen.

  3. Führen Sie die folgende T-SQL-Anweisung aus, die öffentlich zugängliche vorkonfigurierte Speichercontainer und einen gemeinsamen Zugriffssignaturschlüssel verwendet, um ein Credential in Ihrer SQL Managed Instance zu erstellen.

    Wichtig

    • CREDENTIAL muss mit dem Containerpfad übereinstimmen, mit https beginnen und darf nicht mit einem Schrägstrich am Ende enden.
    • IDENTITY muss den Wert SHARED ACCESS SIGNATURE haben.
    • SECRET muss das Shared Access Signature-Token sein und darf kein vorangestelltes ? enthalten.
    • In diesem Beispiel wird SECRET weggelassen, da das Speicherkonto öffentlich verfügbar ist. Wenn Sie ein Speicherkonto verwenden, das nicht öffentlich verfügbar ist, müssen Sie ein Token für Shared Access Signature bereitstellen.
    CREATE CREDENTIAL [https://mitutorials.blob.core.windows.net/examples/WideWorldImporters-Standard.bak]
    WITH IDENTITY = 'SHARED ACCESS SIGNATURE';
    

    Screenshot mit dem SSMS-Abfrage-Editor. Die CREATE CREDENTIAL'-Anweisung ist sichtbar, und eine Meldung gibt an, dass die Abfrage erfolgreich ausgeführt wurde.

    Der Berechtigungspfad im vorherigen Beispiel ermöglicht den Zugriff auf eine einzelne Datei. Sie können auch ein Token für Shared Access Signature erstellen, z. B. für einen Ordnerpfad:

    CREATE CREDENTIAL [https://<your storage>.blob.core.windows.net/databases/backups/]
    WITH IDENTITY = 'SHARED ACCESS SIGNATURE'
    , SECRET = '<your shared access signature>'; -- omit the leading ?
    
  4. Um zu überprüfen, ob Ihre Anmeldeinformationen richtig funktionieren, führen Sie die folgende Anweisung aus, die eine URL verwendet, um eine Liste von Sicherungsdateien zu erhalten.

    RESTORE FILELISTONLY FROM URL = 'https://mitutorials.blob.core.windows.net/examples/WideWorldImporters-Standard.bak';
    

    Screenshot mit dem SSMS-Abfrage-Editor. Die RESTORE FILELISTONLY-Anweisung ist sichtbar, und auf der Registerkarte

  5. Führen Sie die folgende Anweisung aus, um die Beispieldatenbank Wide World Importers wiederherzustellen.

    RESTORE DATABASE [WideWorldImportersExample] FROM URL =
      'https://mitutorials.blob.core.windows.net/examples/WideWorldImporters-Standard.bak';
    

    Screenshot mit dem SSMS-Abfrage-Editor. Die RESTORE DATABASE-Anweisung ist sichtbar, und eine Meldung gibt an, dass die Abfrage erfolgreich ausgeführt wurde.

    Tipp

    Wenn Sie empfangen Error: 3201 oder Operating system error 86(The specified network password is not correct.), liegt dies wahrscheinlich daran, dass Ihre SAS-Anmeldeinformationen (die in vorherigen Schritten erstellt wurden) falsch erstellt wurden. DROP CREDENTIAL neu erstellen und den Anmeldenamen, die Identität und den geheimen Schlüssel überprüfen.

  6. Führen Sie die folgende Anweisung aus, um den Status Ihres Wiederherstellungsvorgangs nachzuverfolgen.

    SELECT session_id as SPID, command, a.text AS Query, start_time, percent_complete
       , dateadd(second,estimated_completion_time/1000, getdate()) as estimated_completion_time
    FROM sys.dm_exec_requests r
    CROSS APPLY sys.dm_exec_sql_text(r.sql_handle) a
    WHERE r.command in ('BACKUP DATABASE','RESTORE DATABASE');
    
  7. Wenn der Wiederherstellungsvorgang abgeschlossen ist, zeigen Sie die Datenbank in Objekt-Explorer an. Sie können überprüfen, ob die Datenbank wiederhergestellt wurde, indem Sie die Ansicht sys.dm_operation_status verwenden.

Hinweis

Der Vorgang der Datenbankwiederherstellung ist asynchron und wiederholbar. Sie erhalten möglicherweise eine Fehlermeldung in SSMS, wenn bei der Verbindung ein Fehler auftritt oder ein Timeout abläuft. SQL Managed Instance versucht weiterhin, die Datenbank im Hintergrund wiederherzustellen, und Sie können den Fortschritt des Wiederherstellungsvorgangs mithilfe der Ansichten sys.dm_exec_requests und sys.dm_operation_status nachverfolgen.

In einigen Phasen des Wiederherstellungsprozesses wird ein eindeutiger Bezeichner anstelle des tatsächlichen Datenbanknamens in den Systemansichten angezeigt. Weitere Informationen zu -Anweisungsverhaltensunterschieden finden Sie unter T-SQL-Unterschiede zwischen SQL Server & Azure SQL Managed Instance.