Freigeben über


Was ist azure Database for PostgreSQL Backup?

Azure Backup- und Azure-Datenbankdienste sind zusammengekommen, um eine Sicherungslösung der Unternehmensklasse für Azure Database für PostgreSQL-Server zu erstellen, die Sicherungen für bis zu 10 Jahre aufbewahrt. Neben der langfristigen Aufbewahrung bietet die Lösung die folgenden Funktionen:

  • Kundenseitig gesteuerte, geplante und bedarfsorientierte Sicherungen der einzelnen Datenbanken.
  • Datenbankwiederherstellungen auf Ebene jeder Azure-Datenbank für PostgreSQL-Server oder auf verschiedenen Typen von Blob-Speicher.
  • Zentrale Überwachung aller Vorgänge und Aufträge.
  • Speicherung von Sicherungen in separaten Sicherheits- und Fehlerdomänen. Wenn der Quellserver oder das Quellabonnement kompromittiert wird, bleiben die Sicherungen im Azure Backup-Tresor (in verwalteten Azure Backup-Speicherkonten) sicher.
  • Verwendung von pg_dump für eine größere Flexibilität bei Wiederherstellungen. Sie können datenbankübergreifend wiederherstellen.

Sie können diese Lösung unabhängig oder zusätzlich zur nativen Sicherungslösung in Azure PostgreSQL verwenden, die eine Aufbewahrung für bis zu 35 Tage bietet. Die native Lösung eignet sich für operative Wiederherstellungen, wenn Sie z. B. die neuesten Sicherungen wiederherstellen möchten. Die Azure Backup-Lösung hilft Ihnen bei Ihren Complianceanforderungen und bietet eine präzisere und flexiblere Sicherungs-/Wiederherstellungsfunktion.

Änderungen an Tresorsicherungen für PostgreSQL-Einzelserver

Die Bereitstellungsoption für einen einzelnen Server für Azure Database für PostgreSQL wurde am 28. März 2025 eingestellt. An diesem Datum wurden Änderungen an Azure Backup für PostgreSQL-Einzelserver implementiert. Erfahren Sie mehr über den Ruhestand.

Azure Backup bietet Compliance- und Resilienzlösungen, einschließlich Tresorsicherungen und langfristiger Aufbewahrung von Wiederherstellungspunkten. Am 28. März 2025 wurden die folgenden Änderungen wirksam:

  • Die Sicherungskonfiguration ist für neue PostgreSQL Single-Server-Workloads nicht zulässig.The backup configuration isn't allowed for new PostgreSQL single-server workloads.
  • Alle geplanten Sicherungsaufträge werden dauerhaft eingestellt.
  • Die Erstellung neuer Sicherungsrichtlinien oder die Änderung vorhandener Sicherungsrichtlinien für diese Workload ist nicht möglich.

Am Einstellungsdatum wurden geplante Sicherungsaufträge für PostgreSQL Single-Server-Datenbanken dauerhaft beendet. Sie können keine neuen Wiederherstellungspunkte erstellen.

Ihre vorhandenen PostgreSQL-Single-Server-Datenbanksicherungen werden jedoch gemäß der Sicherungsrichtlinie beibehalten. Die Wiederherstellungspunkte werden erst nach Ablauf des Aufbewahrungszeitraums gelöscht. Informationen zum dauerhaften Aufbewahren der Wiederherstellungspunkte oder zum Löschen vor Ablauf des Aufbewahrungszeitraums finden Sie in der Azure Business Continuity Center-Konsole.

Änderungen an der Abrechnung

Ab dem 31. März 2025 wird Ihnen die Gebühr für den Schutz Ihrer PostgreSQL Single-Server-Datenbanken (Protected Instance, PI) nicht mehr in Rechnung gestellt. Die Gebühr zum Speichern Ihrer Sicherungen gilt jedoch noch. Um die Speichergebühr zu vermeiden, löschen Sie alle Wiederherstellungspunkte aus dem Azure Business Continuity Center.

Hinweis

Azure Backup behält den letzten Wiederherstellungspunkt auch nach Ablauf des Aufbewahrungszeitraums bei. Dieses Feature stellt sicher, dass Sie zugriff auf den letzten Wiederherstellungspunkt für die zukünftige Verwendung haben. Sie können den letzten Wiederherstellungspunkt nur manuell löschen. Wenn Sie den letzten Wiederherstellungspunkt löschen und die Speichergebühr vermeiden möchten, beenden Sie den Datenbankschutz.

Änderungen bei der Wiederherstellung

Sie können PostgreSQL-Single-Server-Datenbanken durch die Verwendung von "Als Dateien wiederherstellen" wiederherstellen. Anschließend müssen Sie manuell einen neuen flexiblen PostgreSQL-Server aus den wiederhergestellten Dateien erstellen.

Hinweis

Die Option " Als Datenbank wiederherstellen " wird ab dem 28. März 2025 nicht unterstützt, aber "Als Dateien wiederherstellen " wird weiterhin unterstützt.

Sicherungsprozess

  1. Als Sicherungsadministrator können Sie die PostgreSQL-Datenbanken angeben, die Sie sichern möchten. Sie können auch die Details von Azure Key Vault angeben, in dem die zum Herstellen einer Verbindung mit den angegebenen Datenbanken erforderlichen Anmeldeinformationen gespeichert werden. Der Datenbankadministrator hat diese Anmeldeinformationen sicher im Key Vault gespeichert.

  2. Der Azure Backup-Dienst überprüft, ob er über entsprechende Berechtigungen verfügt, um sich mit dem angegebenen Azure-Datenbank für PostgreSQL-Server zu authentifizieren und seine Datenbanken zu sichern.

  3. Azure Backup startet eine Worker-Rolle (virtuelle Maschine), in der eine Sicherungserweiterung installiert ist, um mit dem geschützten Azure-Datenbankserver für PostgreSQL zu kommunizieren. Diese Erweiterung besteht aus einem Koordinator und einem PostgreSQL-Plug-In. Der Koordinator löst Workflows für verschiedene Vorgänge aus, z. B. Sicherung und Wiederherstellung. Das Plug-In verwaltet den tatsächlichen Datenfluss.

  4. Zur geplanten Zeit weist der Koordinator das Plug-In an, das Streaming der Sicherungsdaten von der Azure-Datenbank für PostgreSQL-Server mithilfe pg_dump (benutzerdefiniert) zu starten.

  5. Das Plug-In sendet die Daten direkt an die von Azure Backup verwalteten Speicherkonten (maskiert durch den Azure Backup-Tresor), sodass kein Stagingspeicherort erforderlich ist. Die Daten werden über von Microsoft verwaltete Schlüssel verschlüsselt. Der Azure Backup-Dienst speichert die Daten in Speicherkonten.

Diagramm, das den Sicherungsvorgang zeigt.

Authentifizierung von Azure Backup mit der Azure-Datenbank für PostgreSQL-Server

Azure Backup folgt strengen Sicherheitsrichtlinien von Azure. Berechtigungen für die zu sichernde Ressource werden nicht vorausgesetzt. Der Benutzer muss diese Berechtigungen explizit erteilen.

Key Vault-basiertes Authentifizierungsmodell

Der Azure Backup-Dienst muss eine Verbindung mit dem Azure-Datenbank für PostgreSQL-Server herstellen, während jede Sicherung ausgeführt wird. Obwohl ein Benutzername und ein Kennwort (oder eine Verbindungszeichenfolge), die der Datenbank entsprechen, verwendet werden, um diese Verbindung herzustellen, werden diese Anmeldeinformationen nicht mit Azure Backup gespeichert. Stattdessen muss der Datenbankadministrator diese Anmeldeinformationen sicher als Geheimnis in Azure Key Vault speichern.

Der Workloadadministrator ist für das Verwalten und Wechseln von Anmeldeinformationen verantwortlich. Azure Backup ruft die neuesten geheimen Informationen aus dem Schlüsseltresor ab, um die Sicherung durchzuführen.

Diagramm, das die Arbeitsauslastung oder den Datenbankfluss zeigt.

Berechtigungen, die für die Sicherung der PostgreSQL-Datenbank erforderlich sind

  1. Gewähren Sie den folgenden Zugriffsberechtigungen für die verwaltete Identität des Azure Backup Vault:

    • Lesezugriff auf der Azure-Datenbank für PostgreSQL-Server.
    • Key Vault-Geheimnisbenutzerzugriff auf Key Vault (Berechtigungen zum Abrufen und Auflisten für Geheimnisse)
  2. Legen Sie den Netzwerk-Sichtverbindungszugriff auf Folgendes fest:

    • Stellen Sie in Azure Database for PostgreSQL Server den Wert für Zugriff auf Azure-Dienste zulassen auf Ja.
    • Key Vault: Legen Sie " Vertrauenswürdige Microsoft-Dienste zulassen " auf "Ja" fest.
  3. Legen Sie die Sicherungsberechtigungen des Datenbankbenutzers für die Datenbank fest.

Hinweis

Sie können diese Berechtigungen innerhalb des Konfigurationssicherungsflusses mit einem einzigen Klick erteilen, wenn Sie als Sicherungsadministrator Schreibzugriff auf die vorgesehenen Ressourcen haben. Wenn Sie nicht über die erforderlichen Berechtigungen verfügen (wenn mehrere Personas beteiligt sind), verwenden Sie eine Azure Resource Manager-Vorlage.

Berechtigungen, die für die Wiederherstellung der PostgreSQL-Datenbank erforderlich sind

Berechtigungen für die Wiederherstellung ähneln denen, die Sie für die Sicherung benötigen. Sie müssen die Berechtigungen für die Azure-Zieldatenbank für PostgreSQL-Server und den entsprechenden Schlüsseltresor manuell erteilen. Diese Berechtigungen können derzeit nur im Flow Sicherung konfigurieren und nicht inline gewährt werden.

Stellen Sie sicher, dass der Datenbankbenutzer (entsprechend den im Schlüsseltresor gespeicherten Anmeldeinformationen) über die folgenden Wiederherstellungsberechtigungen für die Datenbank verfügt:

  • Weisen Sie einen ALTER USER-Benutzernamen von CREATEDB zu.
  • Weisen Sie dem Datenbankbenutzer die Rolle azure_pg_admin zu.

Microsoft Entra ID-basiertes Authentifizierungsmodell

Ein früheres Authentifizierungsmodell basiert vollständig auf der Microsoft Entra-ID. Das Key Vault-basierte Authentifizierungsmodell (wie weiter oben erläutert) ist jetzt als alternative Option verfügbar, um den Konfigurationsprozess zu vereinfachen.

Um ein automatisiertes Skript und zugehörige Anweisungen zur Verwendung des Microsoft Entra ID-basierten Authentifizierungsmodells zu erhalten, laden Sie dieses Dokument herunter. Er gewährt eine geeignete Gruppe von Berechtigungen für eine Azure-Datenbank für PostgreSQL-Server zur Sicherung und Wiederherstellung.

Hinweis

Der gesamte neu konfigurierte Schutz erfolgt nur mit dem neuen Key Vault-Authentifizierungsmodell. Alle vorhandenen Sicherungsinstanzen, die über die Microsoft Entra ID-basierte Authentifizierung konfiguriert sind, sind jedoch weiterhin vorhanden und verfügen über regelmäßige Sicherungen. Um diese Sicherungen wiederherzustellen, müssen Sie der microsoft Entra ID-basierten Authentifizierung folgen.

Schritte zum manuellen Gewähren des Zugriffs auf den Azure Database for PostgreSQL-Server und den Schlüsseltresor

Führen Sie die folgenden Schritte aus, um alle Zugriffsberechtigungen zu erteilen, die Azure Backup benötigt.

Zugriffsberechtigungen auf dem Azure-Datenbank für PostgreSQL-Server

  1. Legen Sie den Lesezugriff des Azure Backup Vault für die verwaltete Identität auf der Azure-Datenbank für PostgreSQL-Server fest.

    Screenshot, der die Option zeigt, den MSI-Leserzugriff eines Azure Backup-Tresors für einen Azure Database for PostgreSQL-Server festzulegen

  2. Stellen Sie den Zugriff auf Netzeinsicht auf dem Azure-Datenbankserver für PostgreSQL ein, indem Sie Zugriff auf Azure-Dienste zulassen auf Ja setzen.

    Screenshot der Option zum Festlegen des Netzwerk-Sichtverbindungszugriffs auf einem Azure Database for PostgreSQL-Server

Zugriffsberechtigungen für den Schlüsseltresor

  1. Legen Sie den Key Vault-Geheimnisbenutzerzugriff des Azure Backup-Tresors für die verwaltete Identität im Schlüsseltresor fest (Berechtigungen zum Abrufen und Auflisten für Geheimnisse). Zum Zuweisen von Berechtigungen können Sie Rollenzuweisungen oder Zugriffsrichtlinien verwenden. Sie müssen die Berechtigungen nicht mithilfe beider Optionen hinzufügen, da sie nicht hilfreich ist.

  2. Stellen Sie den Sichtzugriff im Netzwerk auf den Schlüssel-Tresor ein, indem Sie "Zulassen, dass vertrauenswürdige Microsoft-Dienste diese Firewall umgehen" auf "Ja" setzen.

    Screenshot, der zeigt, wie Sie die Option auswählen, um vertrauenswürdige Microsoft-Dienste für den Netzwerk-Sichtverbindungszugriff auf einen Schlüsseltresor zuzulassen

Sicherungsberechtigungen des Datenbankbenutzers in der Datenbank

Führen Sie die folgende Abfrage im pgAdmin-Tool aus. Ersetzen Sie username durch die Datenbank-Benutzer-ID.

DO $do$
DECLARE
sch text;
BEGIN
EXECUTE format('grant connect on database %I to %I', current_database(), 'username');
FOR sch IN select nspname from pg_catalog.pg_namespace
LOOP
EXECUTE format($$ GRANT USAGE ON SCHEMA %I TO username $$, sch);
EXECUTE format($$ GRANT SELECT ON ALL TABLES IN SCHEMA %I TO username $$, sch);
EXECUTE format($$ ALTER DEFAULT PRIVILEGES IN SCHEMA %I GRANT SELECT ON TABLES TO username $$, sch);
EXECUTE format($$ GRANT SELECT ON ALL SEQUENCES IN SCHEMA %I TO username $$, sch);
EXECUTE format($$ ALTER DEFAULT PRIVILEGES IN SCHEMA %I GRANT SELECT ON SEQUENCES TO username $$, sch);
END LOOP;
END;
$do$

Hinweis

Wenn eine Datenbank, für die Sie die Sicherung bereits konfiguriert haben, fehlschlägt UserErrorMissingDBPermissions, finden Sie in diesem Handbuch zur Problembehandlung Hilfe bei der Behebung des Problems.

Verwenden des pgAdmin-Tools

Laden Sie das pgAdmin-Tool herunter , wenn Sie es noch nicht haben. Sie können über dieses Tool eine Verbindung mit der Azure-Datenbank für PostgreSQL-Server herstellen. Außerdem können Sie diesem Server Datenbanken und neue Benutzer hinzufügen.

Screenshot des Prozesses zum Herstellen einer Verbindung mit einer Azure-Datenbank für PostgreSQL-Server mithilfe des P G-Verwaltungstools.

Erstellen Sie einen neuen Server mit einem Namen Ihrer Wahl. Geben Sie den Hostnamen/die Adresse ein. Es entspricht dem Servernamenswert , der in der Azure PostgreSQL-Ressourcenansicht im Azure-Portal angezeigt wird.

Screenshot der Optionen zum Erstellen eines neuen Servers mithilfe des P G-Verwaltungstools.

Screenshot der Azure PostgreSQL-Ressourcenansicht im Azure-Portal, einschließlich des Servernamens.

Stellen Sie sicher, dass Sie die aktuelle Client-ID-Adresse den Firewallregeln hinzufügen, damit die Verbindung durchlaufen wird.

Screenshot des Links zum Hinzufügen der aktuellen Client-ID-Adresse zu Firewallregeln.

Sie können dem Server neue Datenbanken und Datenbankbenutzer hinzufügen. Wählen Sie für Datenbankbenutzer die Option "Anmelde-/Gruppenrolle " aus, um Rollen hinzuzufügen. Stellen Sie sicher, dass die Anmeldung möglich ist? ist auf "Ja" festgelegt.

Screenshot der Menüauswahl zum Hinzufügen neuer Datenbanken und Datenbankbenutzer zu einem Server.

Screenshot der Menüauswahl zum Hinzufügen einer neuen Anmelde- oder Gruppenrolle für Datenbankbenutzer.

Screenshot der Umschaltfläche, die auf