Wiederherstellen einer Datenbank in einer verwalteten Azure SQL-Instanz auf den Zustand zu einem früheren Zeitpunkt
Gilt für: Azure SQL Managed Instance
Sie können die Zeitpunktwiederherstellung verwenden, um eine Datenbank zu einem bestimmten, früheren Zeitpunkt als Kopie einer Datenbank zu erstellen. In diesem Artikel erfahren Sie, wie Sie eine Point-in-Time-Wiederherstellung einer Datenbank in einer verwalteten Azure SQL-Instanz durchführen.
Hinweis
Create or Update v02.01.2022 ist veraltet. Verwenden Sie ab Januar 2023 für alle Datenbankwiederherstellungsvorgänge den API-Ersetzungsaufruf Create or Update v5.0.2022.
Übersicht
Die Zeitpunktwiederherstellung ist in Wiederherstellungsszenarien nützlich, z. B. bei einem Incident, der durch einen Fehler oder Ausfall verursacht wurde, wenn Daten nicht ordnungsgemäß geladen wurden oder wenn wichtige Daten gelöscht wurden. Sie können sie auch einfach verwenden, um Ihre Datenbankbereitstellung zu testen und zu überwachen. Azure Backup-Dateien werden je nach Datenbankeinstellungen für einen Zeitraum zwischen sieben und 35 Tagen aufbewahrt.
Sie können die Zeitpunktwiederherstellung verwenden, um eine Datenbank in folgenden Szenarien wiederherzustellen:
- Von einer bestehenden Datenbank
- Aus einer gelöschten Datenbank
- Auf derselben verwalteten Instanz oder auf einer anderen verwalteten Instanz
- Auf einer verwalteten Instanz im selben oder einem anderen Abonnement
Die folgende Tabelle enthält Point-in-Time-Wiederherstellungsszenarien für verwaltete SQL-Instanzen:
Szenario | Azure-Portal | Azure CLI | PowerShell |
---|---|---|---|
Wiederherstellen einer vorhandenen Datenbank auf derselben verwalteten Instanz | Ja | Ja | Ja |
Wiederherstellen einer vorhandenen Datenbank auf einer anderen verwalteten Instanz | Ja | Ja | Ja |
Wiederherstellen einer gelöschten Datenbank auf derselben verwalteten Instanz | Ja | Ja | Ja |
Wiederherstellen einer gelöschten Datenbank auf einer anderen verwalteten Instanz | Ja | Ja | Ja |
Wiederherstellen einer vorhandenen Datenbank auf einer verwalteten Instanz in einem anderen Abonnement | Ja | Ja | Ja |
Wiederherstellen einer gelöschten Datenbank auf einer verwalteten Instanz in einem anderen Abonnement | Ja | Ja | Ja |
Berechtigungen
Um eine Datenbank wiederherzustellen, müssen Sie einen der folgenden Schritte ausführen:
- Ein Mitglied der Rolle „Mitwirkender von SQL Server“ oder Mitwirkender von SQL Managed Instance (je nach Wiederherstellungsziel) im Abonnement
- Der Abonnementbesitzer
Wenn Sie nicht über die Rolle Mitwirkender von SQL Managed Instance verfügen, sollten Sie auch über die folgenden Berechtigungen verfügen, um die Datenbank in einem anderen Zielabonnement wiederherzustellen:
- Microsoft.Sql/managedInstances/databases/readBackups/action für die verwaltete SQL-Quellinstanz.
- Microsoft.Sql/managedInstances/crossSubscriptionPITR/action für die verwaltete SQL-Zielinstanz.
Weitere Informationen finden Sie unter Azure RBAC: Integrierte Rollen.
Einschränkungen
Die folgenden Einschränkungen gelten für die Zeitpunktwiederherstellung in SQL Managed Instance:
Sie können die Zeitpunktwiederherstellung nicht dazu verwenden, eine vollständige SQL Managed Instance-Bereitstellung wiederherzustellen. Verwenden Sie die Zeitpunktwiederherstellung nur, um eine Kopie einer Datenbank zu erstellen, die in SQL Managed Instance gehostet wird.
Die Einschränkungen bei der Zeitpunktwiederherstellung hängen davon ab, ob Sie Ihre Datenbank in einer verwalteten Instanz im selben Abonnement oder in einer verwalteten Instanz in einem anderen Abonnement wiederherstellen.
Wenn Dienstendpunktrichtlinien für Azure SQL Managed Instance aktiviert sind, verhindert das Platzieren einer Dienstendpunktrichtlinie in einem Subnetz Zeitpunktwiederherstellungen von Instanzen in unterschiedlichen Subnetzen.
Warnung
Berücksichtigen Sie die Speichergröße Ihrer verwalteten Instanz. Je nach Größe der wiederherzustellenden Daten reicht der Speicher für Ihre verwaltete Instanz möglicherweise nicht mehr aus. Wenn Sie nicht über genügend Speicherplatz in Ihrer verwalteten Instanz für die wiederhergestellten Daten verfügen, verwenden Sie einen anderen Ansatz.
Wiederherstellen im selben Abonnement
Wenn Sie eine Wiederherstellung von einer verwalteten Instanz auf einer anderen verwalteten Instanz im selben Azure-Abonnement durchführen, müssen sich beide verwalteten Instanzen in derselben Region befinden. Eine regionsübergreifende Wiederherstellung wird derzeit nicht unterstützt.
Wiederherstellung in einem anderen Abonnement
Für die abonnementübergreifende Zeitpunktwiederherstellung einer Sicherung gelten die folgenden Einschränkungen:
- Beide Abonnements müssen sich in derselben Region befinden.
- Beide Abonnements müssen sich im selben Mandanten befinden.
- Der Abonnementtyp muss entweder Enterprise Agreement, Cloud Solution Provider, Microsoft Certified Partner oder nutzungsbasierte Bezahlung sein.
- Sie können die Wiederherstellungsaktion nur für die primäre Instanz verwenden.
- Sie können eine Sicherung nur aus der primären Region wiederherstellen. Das Wiederherstellen einer Datenbank aus der georeplizierten sekundären Region wird für die abonnementübergreifende Point-in-Time-Wiederherstellung nicht unterstützt.
- Benutzer, die eine Wiederherstellungsaktion ausführen, müssen entweder über die Rollenzuweisung SQL Managed Instance-Mitwirkender oder über die folgenden expliziten Berechtigungen verfügen:
- Microsoft.Sql/managedInstances/databases/readBackups/action für die verwaltete SQL-Quellinstanz.
- Microsoft.Sql/managedInstances/crossSubscriptionPITR/action für die verwaltete SQL-Zielinstanz.
- Wenn Sie einen eigenen Schlüssel verwenden (Bring Your Own Key, BYOK), muss der Schlüssel in beiden Abonnements vorhanden sein.
Wiederherstellen einer vorhandenen Datenbank
Sie können eine vorhandene Datenbank über das Azure-Portal, mit PowerShell oder mit der Azure-Befehlszeilenschnittstelle im selben Abonnement wiederhergestellt werden. Wenn Sie die Wiederherstellung auf einer anderen Instanz im selben Abonnement und mit PowerShell oder der Azure-Befehlszeilenschnittstelle durchführen, müssen Sie die Eigenschaften für Zielinstanz von SQL Managed Instance angeben. Die Datenbank wird standardmäßig in derselben Instanz wiederhergestellt.
Wenn Sie die Wiederherstellung in einem anderen Abonnement durchführen, muss der API-Aufruf Create or Update v5.0.2022 für die Wiederherstellungsaktion restorePointInTime
, crossSubscriptionTargetManagedInstanceId
und crossSubscriptionSourceDatabaseId
oder crossSubscriptionRestorableDroppedDatabaseId
enthalten.
Um eine vorhandene Datenbank wiederherzustellen, wechseln Sie zur Datenbankseite im Azure-Portal und wählen Sie Wiederherstellen aus.
Alternativ zum Wiederherstellen Ihrer Datenbank können Sie die folgenden Schritte ausführen:
Melden Sie sich beim Azure-Portal an.
Wechseln Sie zu dem Ziel „SQL Managed Instance“, in dem Sie ihre Datenbank wiederherstellen möchten.
Wählen Sie auf der Seite Übersicht die Option + Neue Datenbank, um die Seite Azure SQL verwaltete Datenbank erstellen zu öffnen.
Geben Sie auf der Registerkarte Grundlagen der Seite Azure SQL verwaltete Datenbank erstellen unter Projektdetails die Details zum Abonnement und zur Ressourcengruppe an. Geben Sie dann unter Datenbankdetails den neuen Namen der Datenbank an, die Sie wiederherstellen möchten. Vergewissern Sie sich, dass die richtige verwaltete Instanz in der Dropdownliste aufgeführt ist. Wählen Sie dann Weiter: Datenquelle> aus.
Wählen Sie auf der Registerkarte Datenquelle unter Vorhandene Daten verwenden die Option Point-in-Time-Wiederherstellung aus. Geben Sie das Abonnement, die Ressourcengruppe und die verwaltete Instanz an, die die Quelldatenbank enthält. Wählen Sie in der Dropdownliste Verwaltete Datenbank die Datenbank aus, die Sie wiederherstellen möchten, und wählen Sie dann den Zeitpunkt aus, an dem Sie die Datenbank wiederherstellen möchten. Die Quell- und Zielinstanz können identisch oder zwei verschiedene Instanzen sein. Wählen Sie Weiter: Zusätzliche Einstellungen>aus.
Auf der Registerkarte Zusätzliche Einstellungen können Sie das Kontrollkästchen aktivieren, um die Aufbewahrungsrichtlinie aus der Quelldatenbank zu erben, oder alternativ können Sie Aufbewahrung konfigurieren auswählen, um die Seite Richtlinien konfigurieren zu öffnen und die gewünschten Aufbewahrungsrichtlinien für Ihre wiederhergestellte Datenbank festzulegen. Wenn Sie fertig sind, wählen Sie Überprüfen und erstellen aus.
Wählen Sie unter Überprüfen + erstellen die Option Erstellen aus, um Ihre Datenbank wiederherzustellen, wenn die Überprüfung erfolgreich ist.
Daraufhin wird der Wiederherstellungsprozess gestartet. Hierbei wird eine neue Datenbank erstellt und mit Daten aus der ursprünglichen Datenbank zum angegebenen Zeitpunkt aufgefüllt. Weitere Informationen zum Wiederherstellungsprozess finden Sie unter Wiederherstellungszeit.
Wiederherstellen einer gelöschten Datenbank
Sie können eine gelöschte Datenbank über das Azure-Portal Azure PowerShell oder die Azure CLI wiederherstellen.
So stellen Sie eine gelöschte verwaltete Datenbank über das Azure-Portal wieder her
Navigieren Sie im Azure-Portal zu Ihrer verwalteten Quellinstanz.
Wählen Sie im Menü auf der linken Seite unter Datenverwaltung die Option Sicherungen aus.
Wählen Sie unter Datenbanken anzeigen die Option Gelöscht aus.
Wählen Sie für die wiederherzustellende Datenbank Wiederherstellen aus.
Geben Sie unter Azure SQL verwaltete Datenbank erstellen Details zur verwalteten Zielinstanz ein, auf der Ihre Datenbank wiederhergestellt werden soll, oder wählen Sie sie aus. Wählen Sie die Registerkarte Datenquelle aus.
Geben Sie unter Datenquelle Details zu Ihrer Quelldatenbank ein, oder wählen Sie sie aus. Wählen Sie die Registerkarte Zusätzliche Einstellungen aus.
Konfigurieren Sie unter Zusätzliche Einstellungen Aufbewahrungseinstellungen. Wählen Sie die Registerkarte Überprüfen + erstellen aus.
Wählen Sie unter Überprüfen + erstellen die Option Erstellen aus, um die gelöschte Datenbank wiederherzustellen.
Überschreiben einer vorhandenen Datenbank
Wenn Sie eine vorhandene Datenbank überschreiben möchten, gehen Sie wie folgt vor:
- Löschen Sie die vorhandene Datenbank, die Sie überschreiben möchten.
- Ändern Sie den Namen der mittels Zeitpunktwiederherstellung wiederhergestellten Datenbank in den Namen der gelöschten Datenbank.
Löschen der ursprünglichen Datenbank
Sie können die Datenbank über das Azure-Portal, über PowerShell oder über T-SQL löschen.
Eine weitere Möglichkeit zum Löschen der Datenbank besteht darin, direkt in SQL Server Management Studio (SSMS) eine Verbindung mit Ihrer verwalteten Instanz herzustellen und dann den Transact-SQL-Befehl DROP
(T-SQL) zu verwenden:
DROP DATABASE WorldWideImporters;
Verwenden Sie eine der folgenden Methoden, um eine Verbindung mit der Datenbank auf Ihrer verwalteten Instanz herzustellen:
- SQL Server Management Studio und Azure Data Studio auf einer Azure-VM
- Point-to-Site
- Öffentlicher Endpunkt
Wählen Sie im Azure-Portal die Datenbank auf Ihrer verwalteten Instanz aus.
Wählen Sie auf der Befehlsleiste Löschen aus.
Ändern des Namens der neuen Datenbank, damit sie mit dem ursprünglichen Datenbanknamen übereinstimmt
Öffnen Sie SQL Server Management Studio (SSMS), und stellen Sie eine direkte Verbindung mit Ihrer verwalteten Instanz her. Führen Sie dann die folgende T-SQL-Abfrage aus. Die Abfrage ändert den Namen der wiederhergestellten Datenbank in den Namen der gelöschten Datenbank, die Sie überschreiben möchten.
ALTER DATABASE WorldWideImportersPITR MODIFY NAME = WorldWideImporters;
Verwenden Sie eine der folgenden Methoden, um eine Verbindung mit der Datenbank auf Ihrer verwalteten Instanz herzustellen:
Nächste Schritte
Erfahren Sie mehr über Automatisierte Sicherungen.