Freigeben über


Offline migrieren, von einem Google Cloud SQL für PostgreSQL zur Azure-Datenbank für PostgreSQL mit dem Migrationsdienst

Dieser Artikel führt Sie bei der Migration einer Google Cloud SQL-Instanz für PostgreSQL im Offlinemodus zu einem Azure Database for PostgreSQL Flexible Server.

Der Migrationsdienst in Azure Database for PostgreSQL ist ein vollständig verwalteter Dienst, der in das Azure-Portal und in Azure CLI integriert ist. Es wurde entwickelt, um Ihre Migrationsreise zum Azure-Datenbankdienst für PostgreSQL Flexible Server zu vereinfachen.

  • Voraussetzungen
  • Durchführen der Migration
  • Überwachen der Migration
  • Überprüfen Sie die Migration nach Abschluss

Voraussetzungen

Für die Migration müssen folgende Voraussetzungen erfüllt sein:

Für die Migration mit dem Migrationsdienst von Azure Database for PostgreSQL müssen die folgenden Voraussetzungen erfüllt sein, die speziell für Offlinemigrationsszenarien gelten.

Überprüfen der Quellversion

Die Version des PostgreSQL-Quellservers muss mindestens 9.5 sein.

Sollte die PostgreSQL-Quellversion niedriger als 9.5 sein, führen Sie ein Upgrade auf 9.5 oder auf eine höhere Version durch, bevor Sie mit der Migration beginnen.

Konfigurieren des Zielsetups

Bevor Sie mit der Migration beginnen, müssen Sie eine Azure Database für PostgreSQL in Azure einrichten.

Die für die Azure Database for PostgreSQL-Instanz gewählte SKU sollte den Spezifikationen der Quelldatenbank entsprechen, um Kompatibilität und angemessene Leistung sicherzustellen.

Stellen Sie bei der Migration zwischen PostgreSQL-Versionen (Haupt- oder Nebenversionen) die Kompatibilität zwischen Ihrer Datenbank und der Anwendung sicher, indem Sie die Versionshinweise auf mögliche wichtige Änderungen überprüfen.

Konfigurieren des Netzwerksetups

Das Netzwerksetup ist entscheidend, damit der Migrationsdienst ordnungsgemäß funktioniert. Stellen Sie sicher, dass der PostgreSQL-Quellserver mit dem Azure Database for PostgreSQL-Zielserver kommunizieren kann. Die folgenden Netzwerkkonfigurationen sind für eine erfolgreiche Migration unerlässlich.

Informationen zum Netzwerksetup finden Sie im Netzwerkhandbuch für den Migrationsdienst.

Zusätzliche Überlegungen zum Netzwerk

Um die Konnektivität zwischen den Quell- und Ziel-PostgreSQL-Instanzen zu erleichtern, ist es wichtig, die datei pg_hba.conf des Quellservers zu überprüfen und zu ändern. Diese Datei enthält die Clientauthentifizierung und muss so konfiguriert sein, dass die PostgreSQL-Zielinstanz eine Verbindung mit der Quelle herstellen kann. Änderungen an der Datei pg_hba.conf erfordern in der Regel einen Neustart der PostgreSQL-Quellinstanz, um wirksam zu werden.

Die Datei pg_hba.conf befindet sich im Datenverzeichnis der PostgreSQL-Installation. Diese Datei sollte überprüft und konfiguriert werden, wenn es sich bei der Quelldatenbank um einen lokalen PostgreSQL-Server oder einen PostgreSQL-Server handelt, der auf einer Azure-VM gehostet wird.

Aktivieren von Erweiterungen

Um eine erfolgreiche Migration mit dem Migrationsdienst in Azure Database for PostgreSQL sicherzustellen, müssen Sie möglicherweise Erweiterungen für Ihre PostgreSQL-Quellinstanz überprüfen. Erweiterungen bieten Funktionalität und Features, die für Ihre Anwendung möglicherweise erforderlich sind. Überprüfen Sie die Erweiterungen unbedingt in der PostgreSQL-Quellinstanz, bevor Sie den Migrationsprozess initiieren.

Aktivieren Sie in der Zielinstanz von Azure Database for PostgreSQL flexiblen Server unterstützte Erweiterungen, die in der Quell-PostgreSQL-Instanz identifiziert werden.

Weitere Informationen finden Sie unter Erweiterungen und Module.

Überprüfen der Serverparameter

Diese Parameter werden nicht automatisch in die Zielumgebung migriert und müssen manuell konfiguriert werden.

  • Stimmen Sie Serverparameterwerte aus der Quell-PostgreSQL-Datenbank mit der Azure-Datenbank für PostgreSQL überein, indem Sie im Azure-Portal auf die Seite "Serverparameter " zugreifen und die Werte manuell aktualisieren.

  • Speichern Sie die Parameteränderungen, und starten Sie die Azure-Datenbank für PostgreSQL neu, um die neue Konfiguration bei Bedarf anzuwenden.

Überprüfen der Benutzer und Rollen

Bei der Migration zu Azure Database for PostgreSQL ist es wichtig, die Migration von Benutzer*innen und Rollen separat zu behandeln, da sie manuelle Eingriffe erfordern:

  • Manuelle Migration von Benutzern und Rollen: Benutzer und Rollen müssen manuell zur Azure-Datenbank für PostgreSQL migriert werden. Um diesen Prozess zu erleichtern, können Sie das pg_dumpall Hilfsprogramm mit der --globals-only Kennzeichnung verwenden, um globale Objekte wie Rollen und Benutzer zu exportieren. Führen Sie den folgenden Befehl aus, ersetzen Sie <<username>> durch den tatsächlichen Benutzernamen und <<filename>> durch den gewünschten Ausgabedateinamen.

    pg_dumpall --globals-only -U <<username>> -f <<filename>>.sql
    
  • Einschränkung für Superbenutzerrollen: Die Azure-Datenbank für PostgreSQL unterstützt keine Superuserrollen. Daher müssen für Benutzer*innen mit Berechtigungen als Superuser diese Berechtigungen vor der Migration entfernt werden. Stellen Sie sicher, dass Sie die Berechtigungen und Rollen entsprechend anpassen.

Indem Sie diese Schritte ausführen, können Sie sicherstellen, dass Benutzerkonten und Rollen ordnungsgemäß zur Azure Database for PostgreSQL-Instanz migriert werden, ohne dass Probleme im Zusammenhang mit Einschränkungen für Superuser auftreten.

Deaktivieren der Hochverfügbarkeit (Zuverlässigkeit) und Lesereplikaten im Ziel

  • Das Deaktivieren der Hochverfügbarkeit (Zuverlässigkeit) und der Lesereplikate in der Zielumgebung ist unerlässlich. Diese Features sollten erst nach Abschluss der Migration aktiviert werden.

  • Sie können einen reibungslosen Migrationsprozess ohne die hinzugefügten Variablen sicherstellen, die durch „Hochverfügbarkeit“ und „Lesereplikate“ eingeführt wurden, indem Sie diese Richtlinien befolgen. Sobald die Migration abgeschlossen und die Datenbank stabil ist, können Sie diese Features aktivieren, um die Verfügbarkeit und Skalierbarkeit Ihrer Datenbankumgebung in Azure zu verbessern.

Durchführen der Migration

Sie können mithilfe des Azure-Portals oder der Azure CLI migrieren.

Dieser Artikel führt Sie durch die Verwendung des Azure-Portals zum Migrieren Ihrer PostgreSQL-Datenbank von einem Google Cloud SQL für PostgreSQL-Server zu einer Azure-Datenbank für PostgreSQL. Mit dem Azure-Portal können Sie verschiedene Aufgaben ausführen, einschließlich der Datenbankmigration. Wenn Sie die in diesem Lernprogramm beschriebenen Schritte ausführen, können Sie Ihre Datenbank nahtlos auf Azure übertragen und ihre leistungsstarken Features und Skalierbarkeit nutzen.

Konfigurieren der Migrationsaufgabe

Der Migrationsdienst verfügt über eine einfache, Assistenten-basierte Erfahrung im Azure-Portal.

Verwenden des Azure-Portals:

  1. Wählen Sie Ihren flexiblen Azure Database for PostgreSQL-Server aus.

  2. Wählen Sie im Ressourcenmenü " Migration" aus.

    Screenshot der

  3. Wählen Sie Erstellen aus, um eine auf Assistenten basierende Reihe von Registerkarten zu durchlaufen, um eine Migration von einem Google Cloud SQL für PostgreSQL zu einem flexiblen Server durchzuführen.

    Hinweis

    Bei der ersten Verwendung des Migrationsdienstes erscheint ein leeres Raster mit einer Eingabeaufforderung, um mit Ihrer ersten Migration zu beginnen.

    Wenn Migrationen zu Ihrem flexiblen Serverziel bereits erstellt wurden, enthält das Raster jetzt Informationen zu versuchten Migrationen.

    Screenshot der Registerkarte

Einrichten

Sie müssen mehrere Details im Zusammenhang mit der Migration angeben, z. B. den Migrationsnamen, den Quellservertyp, die Option und den Modus.

  • Der Migrationsname ist der eindeutige Bezeichner für jede Migration zu diesem flexiblen Serverziel. In dieses Feld dürfen nur alphanumerische Zeichen eingegeben werden, und mit Ausnahme von Bindestrichen (-) dürfen keine Sonderzeichen verwendet werden. Der Name darf nicht mit einem Bindestrich beginnen und muss für den Zielserver eindeutig sein. Keine zwei Migrationen zum gleichen flexiblen Serverziel können denselben Namen haben.

  • Quellservertyp – Je nach Ihrer PostgreSQL-Quelle können Sie Google Cloud SQL für PostgreSQL auswählen.

  • Migrationsoption – Ermöglicht Es Ihnen, Überprüfungen durchzuführen, bevor Sie eine Migration auslösen. Folgenden Optionen stehen zur Auswahl:

    • Überprüfen: Mit dieser Option werden die Server- und Datenbankbereitschaft für die Migration zum Ziel überprüft.
    • Überprüfen und migrieren – Führt eine Überprüfung durch, bevor eine Migration ausgelöst wird. Wenn keine Überprüfungsfehler auftreten, wird die Migration initiiert.

Die Auswahl der Option " Überprüfen " oder " Überprüfen und Migrieren " ist immer eine bewährte Methode zum Ausführen der Überprüfungen vor der Migration.

Weitere Informationen zur Validierung vor der Migration finden Sie unter Vormigration.

  • Im Migrationsmodus können Sie den Modus für die Migration auswählen. Offline ist die Standardoption. In diesem Fall verwenden wir die Standardeinstellung.

Wählen Sie "Weiter" aus: Laufzeitserver.

Screenshot der Registerkarte

Laufzeitserver

Der Migrationslaufzeitserver ist ein spezielles Feature innerhalb des Migrationsdiensts in Azure Database for PostgreSQL, das während der Migration als Zwischenserver fungiert. Es handelt sich um eine separate Azure-Datenbank für flexible Serverinstanz von PostgreSQL, die nicht der Zielserver ist, sondern verwendet wird, um die Migration von Datenbanken aus einer Quellumgebung zu erleichtern, auf die nur über ein privates Netzwerk zugegriffen werden kann.

Screenshot der Registerkarte

Weitere Informationen zum Runtimeserver finden Sie im Artikel zum Runtimeserver für die Migration.

Quellserver

Auf der Registerkarte " Quellserver " werden Sie aufgefordert, Details zu der quelle anzugeben, die auf der Registerkarte "Setup " ausgewählt ist. Dies ist die Quelle der Datenbanken.

  • Servername – Geben Sie den Namen des Hosts oder der IP-Adresse des Quell-PostgreSQL-Servers an.
  • Port – Portnummer des Quellservers.
  • Administratoranmeldung – Name des Administratorbenutzers des Quell-PostgreSQL-Servers.
  • Kennwort – Das bereitgestellte Kennwort der Administratoranmeldung, um eine Verbindung zum Quell-PostgreSQL-Server herzustellen.
  • SSL-Modus – Unterstützte Werte sind preferred und required. Wenn das SSL auf dem Quell-PostgreSQL-Server ist OFF, verwenden Sie prefer. Wenn das SSL auf dem Quellserver lautet ON, verwenden Sie die require. SSL-Werte können in der Datei postgresql.conf des Quellservers bestimmt werden.
  • Testverbindung – Führt den Verbindungstest zwischen Ziel und Quelle aus. Sobald die Verbindung erfolgreich ist, können Sie mit der nächsten Registerkarte fortfahren. Dieser Test zielt darauf ab, Konnektivitätsprobleme zu identifizieren, die zwischen den Ziel- und Quellservern bestehen können, einschließlich der Überprüfung der Authentifizierung mithilfe der bereitgestellten Anmeldeinformationen. Das Herstellen einer Testverbindung dauert einige Sekunden.

Wählen Sie nach der erfolgreichen Testverbindung "Weiter: Zielserver" aus.

Screenshot der Registerkarte

Zielserver

Auf der Registerkarte " Zielserver " werden Metadaten für das flexible Serverziel angezeigt, z. B. Abonnementname, Ressourcengruppe, Servername, Standort und PostgreSQL-Version.

  • Administratoranmeldung – Name des Administratorbenutzers des Ziel-PostgreSQL-Servers.
  • Kennwort – Das Kennwort der Administratoranmeldung, bereitgestellt, um eine Verbindung mit dem Ziel-PostgreSQL-Server herzustellen.
  • Benutzerdefinierter FQDN oder IP-Adresse: Das benutzerdefinierte FQDN- oder IP-Adressfeld ist optional und kann verwendet werden, wenn sich das Ziel hinter einem benutzerdefinierten DNS-Server befindet oder über benutzerdefinierte DNS-Namespaces verfügt, sodass er nur über bestimmte FQDNs oder IP-Adressen zugänglich ist. Dies kann z. B. Einträge wie production-flexible-server.example.com, 198.1.0.2 oder einen PostgreSQL-FQDN wie production-flexible-server.postgres.database.azure.com enthalten, wenn der benutzerdefinierte DNS-Server die DNS-Zone postgres.database.azure.com enthält oder Weiterleitungsabfragen für diese Zone an 168.63.129.16 weiterleitet, wo der FQDN in der öffentlichen oder privaten Azure-DNS-Zone aufgelöst wird.
  • Testverbindung – Führt den Verbindungstest zwischen Der Quelle und dem Ziel aus. Sobald die Verbindung erfolgreich ist, können Sie mit der nächsten Registerkarte fortfahren. Dieser Test zielt darauf ab, Konnektivitätsprobleme zu identifizieren, die zwischen den Quell- und Zielservern bestehen können, einschließlich der Überprüfung der Authentifizierung mithilfe der bereitgestellten Anmeldeinformationen. Das Herstellen einer Testverbindung dauert einige Sekunden.

Wählen Sie nach der erfolgreichen Testverbindung die Option "Weiter: Datenbanken" aus, die überprüft oder migriert werden sollen.

Screenshot der Registerkarte

Datenbanken, die überprüft oder migriert werden sollen

Unter der Registerkarte "Datenbanken zum Überprüfen oder Migrieren " können Sie eine Liste der Benutzerdatenbanken auswählen, die von Ihrem Quell-PostgreSQL-Server migriert werden sollen.

Nachdem Sie die Datenbanken ausgewählt haben, wählen Sie "Weiter: Zusammenfassung" aus.

Screenshot der Registerkarte

Zusammenfassung

Auf der Registerkarte " Zusammenfassung " werden alle Quell- und Zieldetails zum Erstellen der Überprüfung oder Migration zusammengefasst. Überprüfen Sie die Details, und wählen Sie " Überprüfung und Migration starten" aus.

Screenshot: Registerkarte mit der Zusammenfassung für die Migration

Abbrechen der Überprüfung oder Migration

Sie können alle aktuellen Überprüfungen oder Migrationen abbrechen. Der Workflow muss sich im Status " In Bearbeitung " befinden, damit er abgebrochen werden kann. Sie können eine Überprüfung oder Migration nicht im Status "Erfolgreich " oder " Fehlgeschlagen " abbrechen.

  • Durch das Abbrechen einer Überprüfung wird die weitere Überprüfungsaktivität beendet, und die Überprüfung wird in den Zustand "Abgebrochen" verschoben.
  • Bei Abbruch einer Migration werden alle weiteren Migrationsaktivitäten auf dem Zielserver gestoppt, und sie wechseln in den Zustand Abgebrochen. Die Aktion "Abbrechen" macht alle Änderungen rückgängig, die der Migrationsdienst auf dem Zielserver vorgenommen hat.

Überwachen der Migration

Nachdem Sie die Schaltfläche " Überprüfung und Migration starten " ausgewählt haben, wird in einigen Sekunden eine Benachrichtigung angezeigt, um zu sagen, dass die Überprüfung oder Migration erfolgreich ist. Sie werden automatisch auf die Migrationsseite des flexiblen Servers umgeleitet. Der Eintrag zeigt den Status als in Bearbeitung an. Der Workflow dauert 2 bis 3 Minuten, um die Migrationsinfrastruktur einzurichten und Netzwerkverbindungen zu überprüfen.

Screenshot der Seite „Monitor-Migration“.

Das Raster, in dem die Migrationen angezeigt werden, enthält die folgenden Spalten: Name, Status, Migrationsmodus, Migrationstyp, Quellserver, Quellservertyp, Datenbanken, Dauer und Startzeit. Die Einträge werden nach Startzeit in absteigender Reihenfolge sortiert angezeigt, wobei der letzte Eintrag oben steht. Sie können die Schaltfläche " Aktualisieren " in der Symbolleiste verwenden, um den Status der Überprüfung oder Migrationsausführung zu aktualisieren.

Details zur Migration

Wählen Sie den Migrationsnamen im Raster aus, um die zugehörigen Details anzuzeigen.

Denken Sie daran, dass Sie bei der Erstellung dieser Migration in den vorherigen Schritten die Migrationsoption " Überprüfen und Migrieren" konfiguriert haben. In diesem Szenario werden validierungen zuerst ausgeführt, bevor die Migration beginnt. Nachdem der Unterstatus " Ausführen der erforderlichen Schritte " abgeschlossen wurde, wechselt der Workflow in den Unterstatus " Überprüfung" in Bearbeitung.

  • Wenn bei der Überprüfung Fehler auftreten, wechselt die Migration in den Zustand Fehler.

  • Wenn die Überprüfung ohne Fehler abgeschlossen ist, wird die Migration gestartet, und der Workflow wechselt in den Unterstatus der Migration von Daten.

Validierungsdetails sind auf Instanz- und Datenbankebene verfügbar.

  • Überprüfungsdetails z. B.
    • Enthält eine Überprüfung im Zusammenhang mit der Verbindungsüberprüfung, der Quellversion, d. h. der PostgreSQL-Version >= 9.5 und der Serverparameterüberprüfung, ob die Erweiterungen in den Serverparametern der Azure-Datenbank für PostgreSQL flexiblen Server aktiviert sind.
  • Überprüfungs- und Migrationsdetails für Datenbanken
    • Dies enthält eine Validierung der einzelnen Datenbanken im Zusammenhang mit Erweiterungen und Sortierungsunterstützung auf einem flexiblen Azure Database for PostgreSQL-Server.

Sie können den Überprüfungsstatus und den Migrationsstatus auf der Seite mit den Migrationsdetails anzeigen.

Screenshot der Details mit Überprüfung und Migration.

Einige mögliche Migrationsstatusse:

Migrationsstatus

Der Status Beschreibung
In Bearbeitung Die Migrationsinfrastruktur wird gerade eingerichtet, oder die eigentliche Datenmigration wird gerade durchgeführt.
Abgesagt Die Migration wurde abgebrochen oder gelöscht.
Fehlgeschlagen Bei der Migration ist ein Fehler aufgetreten.
Fehler bei der Überprüfung Die Überprüfung war nicht erfolgreich.
Erfolgreich Die Migration wurde erfolgreich durchgeführt und ist beendet.

Migrationsunterstatus

Unterstatus Beschreibung
Ausführen von Erforderlichen Schritten Die Infrastruktur für die Datenmigration wird gerade eingerichtet.
Überprüfung wird ausgeführt Die Validierung ist in Bearbeitung.
Migrieren von Daten Die Datenmigration wird durchgeführt.
Abschließen der Migration Die Migration ist fast abgeschlossen.
Abgeschlossen Die Migration wurde abgeschlossen.
Fehlgeschlagen Die Migration ist fehlgeschlagen.

Validierungsunterstatusse

Unterstatus Beschreibung
Fehlgeschlagen Fehler bei der Überprüfung.
Erfolgreich Die Überprüfung war erfolgreich.
Warning Die Überprüfung befindet sich im Zustand „Warnung“.

Überprüfen Sie die Migration nach Abschluss

Nach Abschluss der Datenbanken müssen Sie die Daten zwischen Quelle und Ziel manuell überprüfen und überprüfen, ob alle Objekte in der Zieldatenbank erfolgreich erstellt wurden.

Nach der Migration können Sie die folgenden Aufgaben ausführen:

  • Überprüfen Sie die Daten auf Ihrem flexiblen Server, und stellen Sie sicher, dass es sich um eine genaue Kopie der Quellinstanz handelt.

  • Nach der Überprüfung aktivieren Sie die Option für Hochverfügbarkeit auf Ihrem flexiblen Server nach Bedarf.

  • Ändern Sie die SKU des flexiblen Servers entsprechend den Anwendungsanforderungen. Diese Änderung erfordert einen Neustart des Datenbankservers.

  • Wenn Sie Serverparameter gegenüber ihren Standardwerten in der Quellinstanz ändern, kopieren Sie diese Serverparameterwerte auf den flexiblen Server.

  • Kopieren Sie weitere Servereinstellungen wie Tags, Warnungen und Firewallregeln (falls zutreffend) aus der Quellinstanz auf den flexiblen Server.

  • Nehmen Sie Änderungen an Ihrer Anwendung vor, um die Verbindungszeichenfolgen auf einen flexiblen Server zu verweisen.

  • Überwachen Sie die Datenbankleistung genau, um festzustellen, ob Leistungsoptimierung erforderlich ist.