Wiederherstellen von Stretch-aktivierten Datenbanken (Stretch Database)

Gilt für: SQL Server 2016 (13.x) und höher – nur Windows

Wichtig

Stretch Database ist in SQL Server 2022 (16.x) und der Azure SQL-Datenbank veraltet. Diese Funktion wird in einer zukünftigen Version der Datenbank-Engine entfernt. Nutzen Sie diese Funktionen bei Neuentwicklungen nicht mehr, und planen Sie die Änderung von Anwendungen, die diese Funktion zurzeit verwenden.

Das Wiederherstellen einer gesicherten Datenbank ist nach vielen Arten von Fehlern, Ausfällen und Notfällen unerlässlich.

Weitere Informationen finden Sie unter Sichern von Stretch-aktivierten Datenbanken.

Die Datensicherung ist nur ein Teil einer vollständigen Lösung für Hochverfügbarkeit und Geschäftskontinuität. Weitere Informationen zu Hochverfügbarkeit finden Sie unter Lösungen für Hochverfügbarkeit.

Wiederherstellen der SQL Server-Daten

Nach einem Hardwareausfall oder einer Beschädigung stellen Sie die Stretch-aktivierte SQL Server-Datenbank aus einer Sicherung wieder her. Dafür können Sie die derzeit verwendeten und üblichen SQL Server-Wiederherstellungsmethoden verwenden. Weitere Informationen finden Sie unter Übersicht über Wiederherstellungsvorgänge.

Nach der Wiederherstellung der SQL Server-Datenbank müssen Sie die gespeicherte Prozedur sys.sp_rda_reauthorize_db ausführen, um die Verbindung zwischen der Stretch-aktivierten SQL Server-Datenbank und der Azure-Remotedatenbank erneut herzustellen. Weitere Informationen finden Sie unter Wiederherstellen der Verbindung zwischen der SQL Server-Datenbank und der Azure-Remotedatenbank.

Wiederherstellen der Azure-Remotedaten

Wiederherstellen einer Azure-Livedatenbank

Der Dienst SQL Server Stretch Database erstellt mit Azure Storage mindestens alle acht Stunden Momentaufnahmen sämtlicher Livedaten. Diese Momentaufnahmen werden sieben Tage lang aufbewahrt. Dadurch können Sie Ihre Daten von mindestens 21 Wiederherstellungspunkten in den letzten sieben Tagen wiederherstellen – bis zum Zeitpunkt der Erstellung der letzten Momentaufnahme.

Um eine Azure-Livedatenbank im Azure-Portal in einem Zustand wiederherzustellen, den sie zu einem früheren Zeitpunkt hatte, führen Sie folgende Schritte aus:

  1. Melden Sie sich beim Azure-Portal an.
  2. Wählen Sie auf der linken Seite des Fensters Durchsuchen und dann SQL-Datenbankenaus.
  3. Navigieren Sie zu Ihrer Datenbank, und wählen Sie sie aus.
  4. Wählen Sie oben im Datenbankbereich die Option Wiederherstellen aus.
  5. Geben Sie einen neuen Datenbanknamenan, wählen Sie einen Wiederherstellungspunkt aus, und klicken Sie dann auf Erstellen.
  6. Der Wiederherstellungsvorgang für die Datenbank beginnt und kann mithilfe von Benachrichtigungen überwacht werden.

Wiederherstellen einer gelöschten Azure-Datenbank

Der Azure-Dienst SQL Server Stretch Database erstellt eine Datenbankmomentaufnahme, bevor eine Datenbank gelöscht wird, und bewahrt diese sieben Tage lang auf. Danach werden keine Momentaufnahmen der Livedatenbank mehr aufbewahrt. Dadurch können Sie eine gelöschte Datenbank in dem Zustand wiederherstellen, den sie zum Zeitpunkt des Löschens hatte.

Gehen Sie folgendermaßen vor, um mit dem Azure-Portal eine Azure-Datenbank auf den Zeitpunkt wiederherzustellen, zu dem sie gelöscht wurde.

  1. Melden Sie sich beim Azure-Portal an.
  2. Wählen Sie auf der linken Seite des Fensters Durchsuchen und dann SQL Server aus.
  3. Navigieren Sie zu Ihrem Server, und wählen Sie ihn aus.
  4. Scrollen Sie auf dem Blatt für Ihren Server nach unten zu den Vorgängen, und wählen Sie die Kachel Gelöschte Datenbanken aus.
  5. Wählen Sie die gelöschte Datenbank aus, die Sie wiederherstellen möchten.
  6. Geben Sie einen neuen Datenbanknamen an, und klicken Sie auf Erstellen.
  7. Der Wiederherstellungsvorgang für die Datenbank beginnt und kann mithilfe von Benachrichtigungen überwacht werden.

Wiederherstellen der Verbindung zwischen der SQL Server-Datenbank und der Azure-Remotedatenbank

  1. Wenn Sie eine Verbindung mit einer wiederhergestellten Azure-Datenbank herstellen möchten, die einen anderen Namen hat oder sich in einer anderen Region befindet, müssen Sie die gespeicherte Prozedur sys.sp_rda_deauthorize_db ausführen, um die Verbindung mit der vorherigen Azure-Datenbank zu trennen.

  2. Führen Sie die gespeicherte Prozedur sys.sp_rda_reauthorize_db aus, um die lokale Stretch-aktivierte Datenbank erneut mit Azure zu verbinden.

    • Geben Sie die vorhandenen datenbankbezogenen Anmeldeinformationen als sysname oder varchar(128)-Wert an. (Verwenden Sie nicht varchar(max).) Sie können den Anmeldeinformationsnamen in der Sicht sys.database_scoped_credentials nachschlagen.

    • Geben Sie an, ob eine Kopie der Remotedaten erstellt und eine Verbindung mit der Kopie hergestellt werden soll (empfohlen).

      USE <Stretch-enabled database name>;
      GO
      EXEC sp_rda_reauthorize_db
          @credential = N'<existing_database_scoped_credential_name>',
          @with_copy = 1;
      GO
      

Siehe auch