Freigeben über


Tutorial: Offlinemigration von Amazon Aurora PostgreSQL zu Azure Database for PostgreSQL mit dem Migrationsdienst

In diesem Artikel wird erläutert, wie Sie eine PostgreSQL-Datenbank offline von Amazon Aurora zu Azure Database for PostgreSQL migrieren.

Der Migrationsdienst in Azure Database for PostgreSQL ist ein vollständig verwalteter Dienst, der in das Azure-Portal und die Azure CLI integriert ist. Er vereinfacht die Migration zu Azure Database for PostgreSQL.

In diesem Tutorial führen Sie Folgendes durch:

  • Erfüllen der Voraussetzungen
  • Initiieren der Migration
  • Überwachen der Migration
  • Überprüfen der Migration

Voraussetzungen

Bevor Sie eine Migration mithilfe des Migrationsdiensts in Azure Database for PostgreSQL starten, ist es wichtig, die folgenden Voraussetzungen abzuschließen. Diese Voraussetzungen sind speziell für Offlinemigrationsszenarien konzipiert.

Ü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 höher durch, bevor Sie mit der Migration beginnen.

Konfigurieren des Zielsetups

Vor Beginn der Migration müssen Sie eine Instanz von Azure Database for PostgreSQL in Azure erstellen. Die SKU, die für die Azure-Datenbank für PostgreSQL Flexible Server bereitgestellt wird, sollte mit der Quelle übereinstimmen.

Weitere Informationen finden Sie unter Create an Azure Database for PostgreSQL flexible Server.

Konfigurieren des Netzwerksetups

Das Netzwerksetup ist entscheidend, damit der Migrationsdienst ordnungsgemäß funktioniert. Stellen Sie sicher, dass der PostgreSQL-Quellserver mit dem Zielserver in Azure Database for PostgreSQL kommunizieren kann.

Informationen zum Netzwerksetup finden Sie in den Netzwerkszenarien für den Migrationsdienst.

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 in Azure Database for PostgreSQL.

Hinweis

Bei Änderungen am shared_preload_libraries-Parameter ist ein Neustart erforderlich.

Überprüfen der Serverparameter

Serverparameter werden nicht automatisch zur Zielumgebung migriert und müssen manuell konfiguriert werden.

  • Stimmen Sie Serverparameterwerte aus der PostgreSQL-Quelldatenbank mit der Instanz von Azure Database for PostgreSQL ab. Wechseln Sie im Azure-Portal zu Serverparameter, und aktualisieren Sie die Werte manuell.

  • Speichern Sie die Parameteränderungen, und starten Sie die Azure Database for PostgreSQL-Instanz 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 Benutzern und Rollen separat zu behandeln, da sie manuellen Eingriff erfordern.

  • Manuelle Migration von Benutzern und Rollen: Benutzer und ihre zugehörigen Rollen müssen manuell zur Azure Database for PostgreSQL-Instanz migriert werden. Um diesen Prozess zu unterstützen, können Sie das Hilfsprogramm „pg_dumpall“ mit dem Flag --globals-only verwenden, um globale Objekte wie Rollen und Benutzerkonten zu exportieren.

    Führen Sie den folgenden Befehl aus. Ersetzen Sie <username> durch den tatsächlichen Benutzernamen, und ersetzen Sie <filename> durch den Namen, den Sie für die Ausgabedatei verwenden möchten.

    pg_dumpall --globals-only -U <username> -f <filename>.sql
    
  • Einschränkung für Superuserrollen: Azure Database for PostgreSQL unterstützt keine Superuserrollen. Superuserberechtigungen müssen vor der Migration entfernt werden. Stellen Sie sicher, dass Sie die Berechtigungen und Rollen entsprechend anpassen.

Mithilfe dieser Schritte können Sie sicherstellen, dass Benutzerkonten und Rollen ordnungsgemäß zu Azure Database for PostgreSQL migriert werden, ohne dass Probleme im Zusammenhang mit Einschränkungen für Superuser auftreten.

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

Es ist wichtig, dass Sie Hochverfügbarkeit (Zuverlässigkeit) und Lesereplikate in der Zielumgebung deaktivieren, bevor Sie die Migration initiieren. Diese Features sollten erst aktiviert werden, nachdem die Migration abgeschlossen wurde.

Initiieren der Migration

Für die Migration kann das Azure-Portal oder die Azure-Befehlszeilenschnittstelle (Command Line Interface, CLI) verwendet werden.

Das Azure-Portal bietet eine einfache und intuitive assistentenbasierte Oberfläche, die Sie durch die Migration führt. Indem Sie die in diesem Lernprogramm beschriebenen Schritte ausführen, können Sie Ihre Datenbank nahtlos auf azure Database for PostgreSQL flexiblen Server übertragen und ihre leistungsstarken Features und Skalierbarkeit nutzen.

Um mithilfe des Azure-Portals zu migrieren, konfigurieren Sie zuerst die Migrationsaufgabe. Stellen Sie dann eine Verbindung mit der Quelle und dem Ziel her, und initiieren Sie die Migration.

Konfigurieren der Migrationsaufgabe

So konfigurieren Sie die Migrationsaufgabe im Azure-Portal

  1. Öffnen Sie Ihren Webbrowser, und navigieren Sie zum Azure-Portal. Geben Sie Ihre Anmeldeinformationen ein.

  2. Wechseln Sie zu Ihrer Instanz von Azure Database for PostgreSQL Flexible Server.

  3. Wählen Sie im Dienstmenü die Option Migration aus.

    Screenshot: Migrationsauswahl im Azure-Portal

  4. Wählen Sie Erstellen aus, um von Amazon Aurora zu einem flexiblen Server zu migrieren.

    Bei der ersten Verwendung des Migrationsdienstes erscheint ein leeres Raster mit einer Eingabeaufforderung, um mit Ihrer ersten Migration zu beginnen. Wenn bereits Migrationen zu Ihrem Zielserver (Flexibler Server) erstellt wurden, enthält das Raster Informationen zu den durchgeführten Migrationsversuchen.

  5. Wählen Sie Erstellen aus, um eine Reihe von Registerkarten zum Einrichten einer Migration zu durchlaufen.

    Screenshot: Bereich „Migration erstellen“

Einrichten

Geben Sie die folgenden Informationen ein oder wählen Sie sie aus:

  • Migrationsname: Geben Sie einen eindeutigen Bezeichner für jede Migration zur Zielinstanz des flexiblen Servers ein. Sie können nur alphanumerische Zeichen und Bindestriche (-) im Migrationsnamen verwenden. Der Name darf nicht mit einem Bindestrich beginnen und muss für den Zielserver eindeutig sein. Zwei Migrationen zur selben Zielinstanz des flexiblen Servers dürfen nicht denselben Namen aufweisen.

  • Typ des Quellservers: Wählen Sie den Quelltyp aus, der Ihrer PostgreSQL-Quelle entspricht, z. B. einen cloudbasierten PostgreSQL-Dienst, ein lokales Setup oder eine virtuelle Maschine.

  • Migrationsoption: Wählen Sie eine der folgenden Optionen für eine Überprüfung vor der Migration aus:

    • Validieren. Überprüft die Bereitschaft Ihres Servers und Ihrer Datenbank für die Migration zur Zielumgebung.
    • Migrieren. Überspringt Validierungen und startet die Migration
    • Überprüfen und migrieren. Führt eine Überprüfung durch, bevor eine Migration ausgelöst wird. Wenn bei der Überprüfung keine Fehler festgestellt werden, wird die Migration ausgelöst.

    Es empfiehlt sich, die Option Überprüfen oder Überprüfen und migrieren für Überprüfungen vor der Migration auszuwählen.

    Weitere Informationen finden Sie unter Validierungen vor der Migration.

  • Migrationsmodus: Wählen Sie den Modus für die Migration aus. Die Standardoption ist Offline.

Wählen Sie Weiter: Mit Quelle verbinden aus.

Screenshot: Registerkarte „Setup“ für die Migration im Azure-Portal

Auswählen des Runtimeservers

Der Migrationsruntimeserver ist ein spezielles Feature des Migrationsdiensts. Der Runtimeserver fungiert während der Migration als Zwischenserver. Es handelt sich um eine separate Instanz des Azure Database for PostgreSQL Flexibel-Servers, die nicht der Zielserver ist. Der Runtimeserver erleichtert die Migration von Datenbanken aus einer Quellumgebung, auf die nur über ein privates Netzwerk zugegriffen werden kann.

Weitere Informationen finden Sie unter Runtimeserver für die Migration mit dem Migrationsdienst in Azure Database for PostgreSQL.

Screenshot der Registerkarte des Migration Runtime Servers

Mit der Quelle verbinden

Geben Sie auf der Registerkarte Mit Quelle verbinden die folgenden Informationen für die Datenbankquelle ein, oder wählen Sie sie aus:

  • Servername: Geben Sie den Hostnamen oder die IP-Adresse der PostgreSQL-Quellinstanz an.
  • Port: Geben Sie die Portnummer des Quellservers ein.
  • Anmeldename des Serveradministrators: Geben Sie den Benutzernamen des PostgreSQL-Quellservers ein.
  • Kennwort: Geben Sie das Kennwort des PostgreSQL-Quellservers ein.
  • SSL-Modus: Unterstützte Werte sind Prefer und Require. Wenn Secure Sockets Layer (SSL) auf dem PostgreSQL-Quellserver deaktiviert ist, wählen Sie Prefer aus. Wenn SSL auf dem Quellserver aktiviert ist, verwenden Sie Require. SSL-Werte werden in der Datei postgresql.conf festgelegt.
  • Verbindung testen: Initiiert einen Konnektivitätstest zwischen Ziel und Quelle. Nach erfolgreicher Verbindungsherstellung fahren Sie mit dem nächsten Schritt fort, um Netzwerkprobleme zwischen dem Ziel und der Quelle zu identifizieren und den Benutzernamen und das Kennwort für die Quelle zu überprüfen. Das Herstellen einer Testverbindung dauert einige Minuten.

Wählen Sie nach dem erfolgreichen Testen der Verbindung Weiter: Migrationsziel auswählen aus.

Screenshot: Registerkarte „Mit Quelle verbinden“.

Wählen Sie das Migrationsziel aus.

Geben Sie auf der Registerkarte Migrationsziel auswählen die folgenden Informationen für die Zielinstanz des flexiblen Servers zusätzlich zu Abonnement, Ressourcengruppe und Servername ein, oder wählen Sie diese Informationen aus:

  • Administratorbenutzername: Der Administratorbenutzername des PostgreSQL-Zielservers
  • Kennwort: Das Kennwort des PostgreSQL-Zielservers
  • FQDN/IP-Adresse (benutzerdefiniert): Die Angabe in diesem Feld ist optional und kann verwendet werden, wenn sich das Ziel hinter einem benutzerdefinierten DNS-Server befindet oder über benutzerdefinierte DNS-Namespaces verfügt, sodass nur über bestimmte FQDNs oder IP-Adressen darauf zugegriffen werden kann. Dies kann z. B. Einträge wie flexibleserver.example.com, 198.1.0.2 oder einen PostgreSQL-FQDN wie flexibleserver.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.
  • Verbindung testen: Initiiert einen Konnektivitätstest zwischen Ziel und Quelle. Nach erfolgreicher Verbindungsherstellung fahren Sie mit dem nächsten Schritt fort, um Netzwerkprobleme zwischen dem Ziel und der Quelle zu identifizieren und den Benutzernamen und das Kennwort für den Zielserver zu überprüfen. Das Herstellen einer Testverbindung dauert einige Minuten.

Wählen Sie nach dem erfolgreichen Test der Verbindung die Option Weiter: Datenbank(en) für die Migration auswählen aus.

Screenshot: Registerkarte zum Herstellen einer Verbindung mit dem Ziel für die Migration.

Auswählen von Datenbanken für die Migration

Wählen Sie auf der Registerkarte Datenbank für die Migration auswählen aus einer Liste der Benutzerdatenbanken aus, die von Ihrem PostgreSQL-Quellserver 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 Validierung oder Migration zusammengefasst. Überprüfen Sie die Details, und wählen Sie dann Validierung und Migration starten aus.

Screenshot: Bereich mit der Zusammenfassung für die Migration.

Überwachen der Migration

Einige Sekunden, nachdem Sie Validierung und Migration starten ausgewählt haben, wird eine Benachrichtigung angezeigt, die Sie informiert, dass die Validierungs- oder Migrationserstellung erfolgreich war. Sie werden zum Bereich Migration der 'Flexible Server'-Instanz umgeleitet. Der Eintrag für Status lautet InProgress, und der Substatus ist PerformingPreRequisiteSteps. Der Workflow benötigt 2 bis 3 Minuten, um die Migrationsinfrastruktur einzurichten und die Netzwerkverbindungen zu überprüfen.

Screenshot des Fensters „Monitor-Migration“

Das Raster, in dem die Migrationen angezeigt werden, enthält folgende Spalten:

  • Name
  • Status
  • Migrationsmodus
  • Migrationstyp
  • Quellserver
  • Typ des Quellservers
  • Datenbanken
  • Dauer
  • Startzeit

Die Einträge werden in absteigender Reihenfolge nach Startzeit angezeigt, mit dem aktuellsten Eintrag zuoberst. Sie können auf der Menüleiste Aktualisieren auswählen, um den Status der Validierungs- oder Migrationsausführung zu aktualisieren.

Details zur Migration

Wählen Sie in der Liste der Migrationen den Namen einer Migration aus, um die zugehörigen Details anzuzeigen.

Wählen Sie auf der Registerkarte Setup die Migrationsoption Überprüfen und migrieren aus. In diesem Szenario werden Validierungen abgeschlossen, bevor die Migration startet. Nach Abschluss des Unterzustands PerformingPreRequisiteSteps wechselt der Workflow in den Unterzustand Überprüfung wird ausgeführt.

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

  • Wenn die Validierung ohne Fehler abgeschlossen wird, wird die Migration gestartet, und der Workflow wechselt in den Unterstatus Daten werden migriert.

Sie können Überprüfungsdetails auf Instanzebene und auf Datenbankebene überprüfen:

  • Überprüfung auf Instanzebene:

    • Überprüfen Sie die Validierung im Zusammenhang mit der Konnektivitätsprüfung für die Quellversion (Serverparameterüberprüfung PostgreSQL version >= 9.5), wenn die Erweiterungen in den Serverparametern der Instanz von Azure Database for PostgreSQL – Flexibler Server aktiviert sind.
  • Überprüfung auf Datenbankebene:

    • Überprüfen Sie die Validierung der einzelnen Datenbanken im Zusammenhang mit der Unterstützung von Erweiterungen und Sortierungen in Azure Database for PostgreSQL – Flexibler Server.

Sie können den aktuellen Status der Migration und der Validierung auf der Seite mit den Migrationsdetails anzeigen.

Screenshot: Details mit Überprüfung und Migration.

In den folgenden Tabellen werden einige mögliche Migrationszustände und Unterzustände beschrieben.

Migrationsstatus

State Beschreibung
InProgress Die Migrationsinfrastruktur wird gerade eingerichtet, oder die eigentliche Datenmigration wird gerade durchgeführt.
Abgesagt Die Migration wurde abgebrochen oder gelöscht.
Fehlgeschlagen Fehler bei der Migration.
Fehler bei der Überprüfung Fehler bei der Überprüfung
Erfolgreich Die Migration war erfolgreich und wurde abgeschlossen.
WaitingForUserAction Gilt nur für die Onlinemigration. Warten, bis ein Benutzer einen Cutover durchführt.

Migrationsunterzustände

Unterzustand Beschreibung
PerformingPreRequisiteSteps Die Infrastruktur für die Datenmigration wird gerade eingerichtet.
Überprüfung wird ausgeführt Die Validierung ist im Gange.
MigratingData Die Datenmigration wird durchgeführt.
CompletingMigration Die Migration ist fast abgeschlossen.
Abgeschlossen Migration abgeschlossen
Fehlgeschlagen Fehler bei der Migration.

Unterzustände der Überprüfung

Unterzustand Beschreibung
Fehlgeschlagen Fehler bei der Überprüfung.
Erfolgreich Die Überprüfung war erfolgreich.
Warning Die Überprüfung zeigt eine Warnung an.

Abbrechen der Migration

Sie können alle aktuellen Überprüfungen oder Migrationen abbrechen. Der Workflow muss sich im Zustand Wird ausgeführt befinden, damit er abgebrochen werden kann. Sie können keine Überprüfung oder Migration abbrechen, die sich im Zustand Erfolgreich oder Fehler befindet.

Bei Abbruch einer Migration werden alle weiteren Migrationsaktivitäten auf dem Zielserver beendet, und der Migrationsversuch wechselt in den Zustand Abgebrochen. Die Aktion „Abbrechen“ setzt alle vom Migrationsdienst auf Ihrem Zielserver vorgenommenen Änderungen zurück.

Überprüfen der Migration

Wenn die Datenbankmigration abgeschlossen ist, überprüfen Sie die Daten zwischen der Quelle und dem Ziel manuell. Stellen Sie sicher, dass alle Objekte in der Zieldatenbank erfolgreich erstellt wurden.

Nach der Migration können Sie diese 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 (Version) des flexiblen Servers entsprechend den Anforderungen Ihrer Anwendung. Für diese Änderung ist ein Neustart des Datenbankservers erforderlich.
  • 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.