Delen via


Zelfstudie: Offline migreren van Amazon Aurora PostgreSQL naar Azure Database for PostgreSQL met de migratieservice

In dit artikel wordt beschreven hoe u uw PostgreSQL-database van Amazon Aurora offline migreert naar Azure Database for PostgreSQL.

De migratieservice in Azure Database for PostgreSQL is een volledig beheerde service die is geïntegreerd in Azure Portal en de Azure CLI. Het is ontworpen om uw migratietraject naar Azure Database for PostgreSQL te vereenvoudigen.

In deze zelfstudie hebt u:

  • Vereisten voltooien
  • De migratie starten
  • De migratie bewaken
  • De migratie controleren

Vereisten

Voordat u een migratie start met behulp van de migratieservice in Azure Database for PostgreSQL, is het belangrijk om de volgende vereisten te voltooien. Deze vereisten zijn speciaal ontworpen voor offlinemigratiescenario's.

De bronversie controleren

De bronversie van de PostgreSQL-server moet 9.5 of hoger zijn. Als de postgreSQL-bronversie ouder is dan 9.5, moet u de versie upgraden naar 9.5 of hoger voordat u de migratie start.

De doelinstallatie configureren

Voordat u met de migratie begint, moet u een exemplaar van Azure Database for PostgreSQL maken in Azure. De SKU die is ingericht voor Azure Database for PostgreSQL - Flexible Server, moet overeenkomen met de bron.

Zie Een exemplaar van Azure Database for PostgreSQL maken voor meer informatie.

De netwerkinstallatie configureren

Het instellen van het netwerk is essentieel voor de juiste werking van de migratieservice. Zorg ervoor dat de PostgreSQL-bronserver kan communiceren met de doelserver in Azure Database for PostgreSQL.

Zie Netwerkscenario's voor de migratieservice voor informatie over de netwerkinstallatie.

Extensies inschakelen

Als u wilt zorgen voor een geslaagde migratie met behulp van de migratieservice in Azure Database for PostgreSQL, moet u mogelijk extensies verifiëren voor uw postgreSQL-bronexemplaren. Extensies bieden functionaliteit en functies die mogelijk vereist zijn voor uw toepassing. Zorg ervoor dat u de extensies op het PostgreSQL-bronexemplaren controleert voordat u het migratieproces start.

Schakel in het doelexemplaren van Azure Database for PostgreSQL - Flexible Server ondersteunde extensies in die zijn geïdentificeerd in het PostgreSQL-bronexemplaren.

Zie Extensies in Azure Database for PostgreSQL voor meer informatie.

Notitie

Opnieuw opstarten is vereist wanneer u wijzigingen aanbrengt in de shared_preload_libraries parameter.

Serverparameters controleren

Serverparameters worden niet automatisch gemigreerd naar de doelomgeving en moeten handmatig worden geconfigureerd.

  • Koppel de serverparameterwaarden van de PostgreSQL-brondatabase aan het exemplaar van Azure Database for PostgreSQL. Ga in Azure Portal naar Serverparameters en werk de waarden handmatig bij.

  • Sla de parameterwijzigingen op en start het exemplaar van Azure Database for PostgreSQL opnieuw op om zo nodig de nieuwe configuratie toe te passen.

Gebruikers en rollen controleren

Wanneer u migreert naar Azure Database for PostgreSQL, is het essentieel om de migratie van gebruikers en rollen afzonderlijk aan te pakken, omdat hiervoor handmatige tussenkomst nodig is.

  • Handmatige migratie van gebruikers en rollen: gebruikers en hun bijbehorende rollen moeten handmatig worden gemigreerd naar het exemplaar van Azure Database for PostgreSQL. Om dit proces te vergemakkelijken, kunt u het hulpprogramma pg_dumpall met de --globals-only vlag gebruiken om globale objecten, zoals rollen en gebruikersaccounts, te exporteren.

    Voer de volgende opdracht uit. Vervang <username> door de werkelijke gebruikersnaam en vervang deze door <filename> de naam die u wilt gebruiken voor het uitvoerbestand.

    pg_dumpall --globals-only -U <username> -f <filename>.sql
    
  • Beperking voor supergebruikersrollen: Azure Database for PostgreSQL biedt geen ondersteuning voor supergebruikersrollen. Machtigingen voor supergebruikers moeten vóór de migratie worden verwijderd. Zorg ervoor dat u de machtigingen en rollen dienovereenkomstig aanpast.

Door deze stappen uit te voeren, kunt u ervoor zorgen dat gebruikersaccounts en -rollen correct worden gemigreerd naar Azure Database for PostgreSQL zonder problemen met betrekking tot supergebruikersbeperkingen.

Hoge beschikbaarheid (betrouwbaarheid) en leesreplica's op het doel uitschakelen

Het is essentieel dat u hoge beschikbaarheid (betrouwbaarheid) uitschakelt en replica's leest in de doelomgeving voordat u de migratie start. Deze functies moeten alleen worden ingeschakeld nadat de migratie is voltooid.

De migratie starten

U kunt migreren met behulp van Azure Portal of de Azure CLI.

Azure Portal biedt een eenvoudige en intuïtieve, wizardgebaseerde ervaring om u door de migratie te begeleiden. Door de stappen in deze zelfstudie uit te voeren, kunt u uw database naadloos overdragen naar Azure Database for PostgreSQL - Flexible Server en profiteren van de krachtige functies en schaalbaarheid.

Als u wilt migreren met behulp van Azure Portal, configureert u eerst de migratietaak. Maak vervolgens verbinding met de bron en het doel en initieer de migratie.

De migratietaak configureren

De migratietaak configureren in Azure Portal:

  1. Open uw webbrowser en ga naar Azure Portal. Voer uw referenties in om u aan te melden.

  2. Ga naar uw exemplaar van Azure Database for PostgreSQL - Flexible Server.

  3. Selecteer Migratie in het servicemenu.

    Schermopname van de migratieselectie in Azure Portal.

  4. Selecteer Maken om van Amazon Aurora naar een flexibele server te migreren.

    De eerste keer dat u de migratieservice gebruikt, wordt er een leeg raster weergegeven met een prompt om uw eerste migratie te starten. Als migraties naar uw flexibele serverdoel al zijn gemaakt, bevat het raster informatie over geprobeerde migraties.

  5. Selecteer Maken om een reeks tabbladen te doorlopen om een migratie in te stellen.

    Schermopname van het deelvenster Migratie maken.

Instellingen

Voer de volgende informatie in of selecteer deze:

  • Migratienaam: Voer een unieke id in voor elke migratie naar dit flexibele serverdoel. U kunt alleen alfanumerieke tekens en afbreekstreepjes (-) in de migratienaam gebruiken. De naam kan niet beginnen met een afbreekstreepje en moet uniek zijn voor een doelserver. Er kunnen geen twee migraties naar hetzelfde flexibele serverdoel dezelfde naam hebben.

  • Bronservertype: Selecteer het brontype dat overeenkomt met uw PostgreSQL-bron, zoals een PostgreSQL-cloudservice, een on-premises installatie of een virtuele machine.

  • Migratieoptie: Kies een van de volgende opties voor een validatie vóór de migratie:

    • Valideer het. Controleert de gereedheid van uw server en database voor migratie naar de doelbron.
    • Migreren. Slaat validaties over en start de migratie.
    • Valideren en migreren. Voert validatie uit voordat een migratie wordt geactiveerd. Als er geen validatiefouten zijn, wordt de migratie geactiveerd.

    Een goede gewoonte is om de optie Valideren of Valideren en migreren te selecteren voor validaties vóór de migratie.

    Zie Premigration-validaties voor meer informatie.

  • Migratiemodus: Selecteer de modus voor de migratie. De standaardoptie is Offline.

Selecteer Volgende: Verbinding maken met bron.

Schermopname van het tabblad Migratie-instelling in Azure Portal.

De runtimeserver selecteren

De migratieruntimeserver is een gespecialiseerde functie van de migratieservice. De runtimeserver fungeert als een tussenliggende server tijdens de migratie. Het is een afzonderlijk exemplaar van Azure Database for PostgreSQL - Flexible Server dat niet de doelserver is. De runtimeserver vereenvoudigt de migratie van databases vanuit een bronomgeving die alleen toegankelijk is via een particulier netwerk.

Zie Migratieruntimeserver voor meer informatie.

Schermopname van het tabblad Migration Runtime Server.

Verbinding maken met de bron

Voer op het tabblad Verbinding maken met bron de volgende gegevens voor de databasebron in of selecteer deze:

  • Servernaam: voer de hostnaam of het IP-adres van het postgreSQL-bronexemplaren in.
  • Poort: Voer het poortnummer van de bronserver in.
  • Aanmeldingsnaam van de serverbeheerder: voer de gebruikersnaam van de postgreSQL-bronserver in.
  • Wachtwoord: voer het wachtwoord in van de PostgreSQL-bronserver.
  • SSL-modus: ondersteunde waarden zijn Voorkeur en Vereisen. Wanneer Secure Sockets Layer (SSL) op de postgreSQL-bronserver is uitgeschakeld, selecteert u Prefer. Als SSL op de bronserver is ingeschakeld, selecteert u Vereisen. SSL-waarden worden ingesteld in het bestand postgresql.conf .
  • Testverbinding: start een connectiviteitstest tussen het doel en de bron. Wanneer de verbinding is geslaagd, gaat u naar de volgende stap om netwerkproblemen tussen het doel en de bron te identificeren en de gebruikersnaam en het wachtwoord voor de bron te verifiëren. Het tot stand brengen van een testverbinding duurt enkele minuten.

Nadat de testverbinding is geslaagd, selecteert u Volgende: Migratiedoel selecteren.

Schermopname van het tabblad Verbinding maken met bron.

Selecteer het migratiedoel

Voer op het tabblad Migratiedoel selecteren de volgende gegevens in of selecteer deze voor het doel van de flexibele server, naast de naam van het abonnement, de resourcegroep en de servernaam:

  • Gebruikersnaam van beheerder: de gebruikersnaam van de beheerder van de PostgreSQL-doelserver.
  • Wachtwoord: het wachtwoord van de PostgreSQL-doelserver.
  • Aangepaste FQDN/IP (optioneel): het aangepaste FQDN-/IP-veld is optioneel en kan worden gebruikt wanneer het doel zich achter een aangepaste DNS-server bevindt of aangepaste DNS-naamruimten heeft, waardoor het alleen toegankelijk is via specifieke FQDN's of IP-adressen. Dit kan bijvoorbeeld vermeldingen zijn zoalsflexibleserver.example.com, of een PostgreSQL-FQDN, zoals flexibleserver.postgres.database.azure.com, als de aangepaste DNS-server de DNS-zone postgres.database.azure.com bevat of query's doorstuurt naar 168.63.129.16, waar de FQDN wordt omgezet in de openbare of privé-DNS-zone van 198.1.0.2Azure.
  • Testverbinding: start een connectiviteitstest tussen het doel en de bron. Wanneer de verbinding is geslaagd, gaat u naar de volgende stap om netwerkproblemen tussen het doel en de bron te identificeren en de gebruikersnaam en het wachtwoord voor de doelserver te verifiëren. Het tot stand brengen van een testverbinding duurt enkele minuten.

Nadat de testverbinding is geslaagd, selecteert u Volgende: Database(s) selecteren voor migratie.

Schermopname van het tabblad Doelmigratie verbinden.

Databases selecteren voor migratie

Selecteer op het tabblad Database voor migratie selecteren uit een lijst met gebruikersdatabases die u wilt migreren vanaf de PostgreSQL-bronserver.

Nadat u de databases hebt geselecteerd, selecteert u Volgende: Samenvatting.

Schermopname van het tabblad Databases selecteren voor migratie.

Samenvatting

Het tabblad Samenvatting bevat een overzicht van alle bron- en doeldetails voor het maken van de validatie of migratie. Controleer de details en selecteer Validatie en migratie starten.

Schermopname van het deelvenster Samenvattingsmigratie.

De migratie bewaken

Binnen een paar seconden nadat u Validatie en migratie starten hebt geselecteerd, wordt er een melding weergegeven dat de validatie of het maken van de migratie is geslaagd. U wordt omgeleid naar het deelvenster Migratie van het flexibele serverexemplaren. De statusvermelding is InProgress en de substate is PerformingPreRequisiteSteps. Het duurt 2 tot 3 minuten om de migratie-infrastructuur in te stellen en netwerkverbindingen te controleren.

Schermopname van het deelvenster Migratie bewaken.

Het raster waarin de migraties worden weergegeven, heeft de volgende kolommen:

  • Naam
  • -Status
  • Migratiemodus
  • Migratietype
  • Bronserver
  • Type bronserver
  • Databases
  • Duur
  • Begintijd

De vermeldingen worden weergegeven in aflopende volgorde van de begintijd, met het meest recente item bovenaan. U kunt Vernieuwen selecteren in de menubalk om de status van de validatie of migratieuitvoering te vernieuwen.

Migratiedetails

Selecteer in de lijst met migraties de naam van een migratie om de bijbehorende details weer te geven.

Selecteer op het tabblad Setup de migratieoptie Valideren en migreren. In dit scenario worden validaties voltooid voordat de migratie wordt gestart. Nadat de substatus PerformingPreRequisiteSteps is voltooid, wordt de werkstroom verplaatst naar de substatus Validatie in voortgang .

  • Als de validatie fouten bevat, wordt de migratie verplaatst naar de status Mislukt .

  • Als de validatie zonder fouten is voltooid, wordt de migratie gestart en wordt de werkstroom verplaatst naar de substatus Gegevens migreren.

U kunt validatiegegevens controleren op exemplaarniveau en op databaseniveau:

  • Validatie op exemplaarniveau:

    • Controleer de validatie met betrekking tot de connectiviteitscontrole voor de bronversie (de PostgreSQL version >= 9.5 serverparametercontrole) als de extensies zijn ingeschakeld in de serverparameters van het exemplaar van Azure Database for PostgreSQL - Flexible Server.
  • Validatie op databaseniveau:

    • Controleer de validatie van de afzonderlijke databases met betrekking tot ondersteuning voor extensies en sorteringen in Azure Database for PostgreSQL - Flexible Server.

U kunt de huidige status voor de migratie en validatie zien in het deelvenster met migratiedetails.

Schermopname van de details die validatie en migratie weergeven.

In de volgende tabellen worden enkele mogelijke migratiestatussen en substatussen beschreven.

Migratiestatussen

Toestand Beschrijving
Wordt uitgevoerd De installatie van de migratie-infrastructuur wordt uitgevoerd of de werkelijke gegevensmigratie wordt uitgevoerd.
Geannuleerd De migratie wordt geannuleerd of verwijderd.
Mislukt De migratie is mislukt.
Validatie is mislukt De validatie is mislukt.
Geslaagd De migratie is voltooid en is voltooid.
WaitingForUserAction Alleen van toepassing in onlinemigraties. Wacht tot een gebruiker een cutover uitvoert.

Migratiesubstates

Substate Beschrijving
PerformingPreRequisiteSteps De installatie van de infrastructuur wordt uitgevoerd voor gegevensmigratie.
Validatie wordt uitgevoerd Validatie wordt uitgevoerd.
Gegevens migreren Gegevensmigratie wordt uitgevoerd.
Voltooien van Migratie Migratie bevindt zich in de laatste fasen van voltooiing.
Voltooid De migratie is voltooid.
Mislukt Migratie is mislukt.

Validatiesubstates

Substate Beschrijving
Mislukt Validatie is mislukt.
Geslaagd Validatie is geslaagd.
Waarschuwing Validatie toont een waarschuwing.

De migratie annuleren

U kunt lopende validaties of migraties annuleren. De werkstroom moet de status Wordt uitgevoerd hebben om te worden geannuleerd. U kunt een validatie of migratie die de status Geslaagd of Mislukt heeft niet annuleren.

Als u een migratie annuleert, wordt verdere migratieactiviteit op uw doelserver gestopt en wordt de migratiepoging verplaatst naar een geannuleerde status. Met de actie Annuleren worden alle wijzigingen die op de doelserver zijn aangebracht, teruggedraaid door de migratieservice.

De migratie controleren

Wanneer de databasemigratie is voltooid, valideert u handmatig de gegevens tussen de bron en het doel. Controleer of alle objecten in de doeldatabase zijn gemaakt.

Na de migratie kunt u deze taken voltooien:

  • Controleer de gegevens op uw flexibele server en zorg ervoor dat het een exacte kopie van het bronexemplaar is.
  • Schakel na verificatie indien nodig de optie voor hoge beschikbaarheid in op uw flexibele server.
  • Wijzig de SKU (versie) van de flexibele server zodat deze overeenkomt met de behoeften van uw toepassing. Voor deze wijziging moet de databaseserver opnieuw worden opgestart.
  • Als u serverparameters wijzigt van de standaardwaarden in het bronexemplaar, kopieert u deze serverparameterwaarden naar de flexibele server.
  • Kopieer andere serverinstellingen, zoals tags, waarschuwingen en firewallregels (indien van toepassing), van het bronexemplaar naar de flexibele server.
  • Breng wijzigingen aan in uw toepassing om de verbindingsreeks s te laten verwijzen naar een flexibele server.
  • Bewaak de prestaties van de database nauwkeurig om te zien of er prestatieafstemming nodig is.