Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit artikel wordt u begeleid bij het migreren van een PostgreSQL-exemplaar van uw on-premises of virtuele Azure-machines (VM's) naar een flexibele Azure Database for PostgreSQL-server in de onlinemodus.
De migratieservice in Azure Database for PostgreSQL is een volledig beheerde service die is geïntegreerd in Azure Portal en Azure CLI. Het is ontworpen om uw migratietraject naar de flexibele Azure Database for PostgreSQL-server te vereenvoudigen.
- Vereisten
 - De migratie uitvoeren
 - De migratie bewaken
 - De overgang starten
 - De migratie controleren wanneer deze is voltooid
 
Vereisten
U hebt de volgende vereisten nodig om de migratie te starten:
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 onlinemigratiescenario's.
- De bronversie controleren
 - Test_decoding installeren voor het instellen van de bron
 - De doelinstallatie configureren
 - CDC inschakelen als bron
 - De netwerkinstallatie configureren
 - Extensies inschakelen
 - Serverparameters controleren
 - Gebruikers en rollen controleren
 
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.
Test_decoding installeren voor het instellen van de bron
- De test_decoding-invoegtoepassing ontvangt Write-Ahead Logging (WAL) via het logische decoderingsmechanisme. De invoegtoepassing ontsleutelt WAL in tekstweergaven van de bewerkingen die worden uitgevoerd.
 - In Amazon RDS voor PostgreSQL is de test_decoding-invoegtoepassing vooraf geïnstalleerd en gereed voor logische replicatie. U kunt eenvoudig logische replicatiesites instellen en WAL-wijzigingen streamen, bijvoorbeeld voor het vastleggen van wijzigingen in gegevens (CDC) of voor replicatie naar externe systemen.
 
Zie de PostgreSQL-documentatie voor meer informatie over de test_decoding-invoegtoepassing.
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 een flexibele Azure Database for PostgreSQL-server, moet overeenkomen met de bron.
Zie Een flexibele Azure Database for PostgreSQL-server maken voor meer informatie.
CDC inschakelen als bron
De test_decoding logische decoderingsinvoegtoepassing legt de gewijzigde records van de bron vast.
Voer de volgende opdracht uit om de migratiegebruiker toegang te geven tot replicatiemachtigingen:
GRANT rds_replication TO <username>;Wijzig in het PostgreSQL-bronexemplaren de volgende parameters in de parametergroep databaseclusters door een nieuwe parametergroep te maken:
- Stel 
rds.logical_replicationin op1. - Ingesteld 
max_replication_slotsop een waarde die groter is dan1. De waarde moet groter zijn dan het aantal databases dat u selecteert voor migratie. - Ingesteld 
max_wal_sendersop een waarde die groter is dan1. Het moet ten minste dezelfde waarde zijn als de waarde voormax_replication_slots, plus het aantal afzenders dat al in uw exemplaar is gebruikt. - De 
wal_sender_timeoutparameter eindigt inactieve replicatieverbindingen die langer zijn dan het opgegeven aantal milliseconden. De standaardwaarde voor een Amazon Aurora PostgreSQL-exemplaar is30000 milliseconds (30 seconds). Als u de waarde instelt om het time-outmechanisme uit te0 (zero)schakelen en is dit een geldige instelling voor migratie. 
- Stel 
 Zorg er in de flexibele doelserver voor dat de onlinemigratie geen opslagruimte meer heeft om de logboeken op te slaan. Zorg er dan voor dat u voldoende opslag in uw tablespace hebt met behulp van een ingerichte beheerde schijf. Schakel de serverparameter
azure.enable_temp_tablespaces_on_local_ssduit voor de duur van de migratie. Herstel de parameter naar de oorspronkelijke status na de migratie.
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 doelexemplaar van de Azure Database for PostgreSQL-flexibele server de ondersteunde extensies in die zijn geïdentificeerd in het PostgreSQL-bronexemplaar.
Zie Extensies en modules voor meer informatie.
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-onlyvlag 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>.sqlBeperking 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 in 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 uitvoeren
U kunt migreren met behulp van Azure Portal of Azure CLI.
In dit artikel wordt u begeleid bij het gebruik van Azure Portal om uw PostgreSQL-database te migreren van een Amazon Aurora PostgreSQL-server naar een Azure Database for PostgreSQL. Met Azure Portal kunt u verschillende taken uitvoeren, waaronder databasemigratie. Als u de stappen in deze zelfstudie volgt, kunt u uw database naadloos overdragen naar Azure en profiteren van de krachtige functies en schaalbaarheid.
De migratietaak configureren
De migratieservice wordt geleverd met een eenvoudige, wizardgebaseerde ervaring in Azure Portal.
Gebruik de Azure-portal:
Selecteer uw Azure Database voor PostgreSQL-flexibele server.
Selecteer Migratie in het resourcemenu.
Selecteer Maken om via een reeks wizard-tabbladen een migratie naar een flexibele server vanaf on-premises of een Azure VM te starten.
Notitie
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 nu informatie over geprobeerde migraties.
Instellingen
U moet meerdere details opgeven met betrekking tot de migratie, zoals de migratienaam, het type bronserver, de optie en de modus.
De migratienaam is de unieke id voor elke migratie naar dit flexibele serverdoel. Dit veld accepteert alleen alfanumerieke tekens en accepteert geen speciale tekens, behalve een afbreekstreepje (-). 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 : afhankelijk van uw PostgreSQL-bron, kunt u azure Virtual Machine of on-premises server selecteren.
Migratieoptie : hiermee kunt u validaties uitvoeren voordat u een migratie activeert. U kunt een van de volgende opties kiezen:
- Valideren : controleert de gereedheid van uw server en database voor migratie naar het doel.
 - Valideren en migreren : voert validatie uit voordat een migratie wordt geactiveerd. Als er geen validatiefouten zijn, wordt de migratie gestart.
 
Het kiezen van de optie Valideren of Valideren en migreren is altijd een goede gewoonte voor het uitvoeren van premigratievalidaties voordat u de migratie uitvoert.
Bezoek premigratie voor meer informatie over premigratievalidatie.
- Met de migratiemodus kunt u de modus voor de migratie kiezen. Offline is de standaardoptie. In dit geval wijzigen we deze in Online.
 
Selecteer Volgende: Runtime-server.
Runtime-server
De migratieruntimeserver is een gespecialiseerde functie binnen de migratieservice in Azure Database for PostgreSQL, ontworpen om tijdens de migratie als een tussenliggende server te fungeren. Het is een afzonderlijk exemplaar van een flexibele Azure Database for PostgreSQL-server dat niet de doelserver is, maar wordt gebruikt om de migratie van databases vanuit een bronomgeving te vergemakkelijken die alleen toegankelijk is via een particulier netwerk.
Ga voor meer informatie over de runtimeserver naar de Migratieruntime-server.
Bronserver
Op het tabblad Bronserver wordt u gevraagd om details te geven die betrekking hebben op de bron die is geselecteerd op het tabblad Setup . Dit is de bron van de databases.
- Servernaam : geef de naam van de host of het IP-adres van de postgreSQL-bronserver op.
 - Poort : poortnummer van de bronserver.
 - Beheerdersaanmelding : de naam van de beheerdergebruiker van de postgreSQL-bronserver.
 - Wachtwoord : wachtwoord van de aanmelding van de beheerder die is opgegeven om verbinding te maken met de PostgreSQL-bronserver.
 - 
              SSL-modus : ondersteunde waarden zijn 
preferredenrequired. Wanneer de SSL op de postgreSQL-bronserver isOFF, gebruikt uprefer. Als de SSL op de bronserver isON, gebruikt u derequire. SSL-waarden kunnen worden bepaald in het bestand postgresql.conf van de bronserver. - Testverbinding : voert de connectiviteitstest tussen het doel en de bron uit. Zodra de verbinding tot stand is gebracht, kunt u doorgaan naar het volgende tabblad. Deze test is bedoeld om connectiviteitsproblemen te identificeren die mogelijk bestaan tussen de doel- en bronservers, inclusief verificatie met behulp van de opgegeven referenties. Het tot stand brengen van een testverbinding duurt enkele seconden.
 
Nadat de testverbinding is geslaagd, selecteert u Volgende: Doelserver.
Doelserver
Op het tabblad Doelserver worden metagegevens weergegeven voor het doel van de flexibele server, zoals de abonnementsnaam, resourcegroep, servernaam, locatie en PostgreSQL-versie.
- Aanmelding van de beheerder : de naam van de beheerder van de PostgreSQL-doelserver.
 - Wachtwoord - Wachtwoord voor de beheerdersaanmelding die is opgegeven om verbinding te maken met de doel-PostgreSQL-server.
 - 
              Aangepaste FQDN of IP-adres: het aangepaste FQDN- of IP-adresveld 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 bevatten zoals 
production-flexible-server.example.com,198.1.0.2of een PostgreSQL-FQDN, zoalsproduction-flexible-server.postgres.database.azure.com, als de aangepaste DNS-server de DNS-zonepostgres.database.azure.combevat of query's doorstuurt voor deze zone naar168.63.129.16, waar de FQDN wordt omgezet in de openbare of privé-DNS-zone van Azure. - Testverbinding : voert de connectiviteitstest tussen de bron en het doel uit. Zodra de verbinding tot stand is gebracht, kunt u doorgaan naar het volgende tabblad. Deze test is bedoeld om connectiviteitsproblemen te identificeren die mogelijk bestaan tussen de bron- en doelservers, inclusief verificatie met behulp van de opgegeven referenties. Het tot stand brengen van een testverbinding duurt enkele seconden.
 
Selecteer na de geslaagde testverbinding de volgende: Databases die u wilt valideren of migreren
Databases die moeten worden gevalideerd of gemigreerd
Op het tabblad Databases voor het valideren of migreren kunt u een lijst met gebruikersdatabases kiezen die u wilt migreren vanaf uw PostgreSQL-bronserver.
Nadat u de databases hebt geselecteerd, selecteert u Volgende: Samenvatting.
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.
De validatie of migratie annuleren
U kunt lopende validaties of migraties annuleren. De werkstroom moet in de status In uitvoering zijn om geannuleerd te worden. U kunt een validatie of migratie niet annuleren in de status Geslaagd of Mislukt .
Als u een validatie annuleert, worden verdere validatieactiviteiten gestopt en wordt de validatie verplaatst naar de status Geannuleerd .
Als u een migratie annuleert, wordt verdere migratieactiviteit op uw doelserver gestopt en krijgt het de status Geannuleerd. Wijzigingen op de doelserver worden niet verwijderd of teruggedraaid. Zorg ervoor dat u de databases op uw doelserver neer zet die betrokken zijn bij een geannuleerde migratie.
De migratie bewaken
Nadat u de knop Validatie en migratie starten hebt geselecteerd, wordt er binnen een paar seconden een melding weergegeven om te zeggen dat de validatie of het maken van de migratie is geslaagd. U wordt automatisch omgeleid naar de migratiepagina van de flexibele server. De vermelding toont Status als Wordt uitgevoerd. Het duurt 2 tot 3 minuten om de migratie-infrastructuur in te stellen en netwerkverbindingen te controleren.
Het raster met de migraties bevat de volgende kolommen: Naam, Status, Migratiemodus, Migratietype, Bronserver, Bronservertype, Databases, Duur en Begintijd. De items worden gesorteerd op begintijd in aflopende volgorde, met de meest recente vermelding bovenaan. U kunt de knop Vernieuwen op de werkbalk gebruiken om de status van de validatie of migratieuitvoering te vernieuwen.
Migratiedetails
Selecteer de migratienaam in het raster om de bijbehorende details weer te geven.
Houd er rekening mee dat u in de vorige stappen, toen u deze migratie maakte, de migratieoptie hebt geconfigureerd als Valideren en migreren. In dit scenario worden eerst validaties uitgevoerd voordat de migratie wordt gestart. Nadat de substatus vereiste stappen uitvoeren is voltooid, wordt de werkstroom verplaatst naar de substatus van validatie die wordt uitgevoerd.
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 van Gegevens migreren.
Validatiedetails zijn beschikbaar op exemplaar- en databaseniveau.
- 
              Validatiedetails voor bijvoorbeeld
- Bevat validatie met betrekking tot de connectiviteitscontrole, de bronversie, dat wil gezegd PostgreSQL-versie >= 9.5 en serverparametercontrole, of de extensies zijn ingeschakeld in de serverparameters van de flexibele Server van Azure Database for PostgreSQL.
 
 - 
              Validatie- en migratiedetails voor databases
- Het bevat validatie van de afzonderlijke databases die betrekking hebben op extensies en sorteringsondersteuning in flexibele Azure Database for PostgreSQL-server.
 
 
U kunt de validatiestatus en de migratiestatus zien op de pagina met migratiedetails.
Enkele mogelijke migratiestatussen:
Migratiestatus
| Toestand | Beschrijving | 
|---|---|
| In uitvoering | 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 geslaagd en voltooid. | 
| Wachten op actie van gebruiker | Wachten op actie van de gebruiker om de overschakeling uit te voeren. | 
Migratiedetails
| Deelstatus | Beschrijving | 
|---|---|
| Vereiste stappen uitvoeren | De installatie van de infrastructuur wordt uitgevoerd voor gegevensmigratie. | 
| Validatie wordt uitgevoerd | Validatie wordt uitgevoerd. | 
| Database op de doellocatie verwijderen | De reeds bestaande database op de doelserver laten vallen. | 
| Gegevens migreren | Gegevensmigratie wordt uitgevoerd. | 
| Migratie voltooien | Migratie bevindt zich in de laatste fasen van voltooiing. | 
| Voltooid | De migratie is voltooid. | 
| Mislukt | De migratie is mislukt. | 
Validatiesubstatussen
| Deelstatus | Beschrijving | 
|---|---|
| Mislukt | Validatie is mislukt. | 
| Geslaagd | Validatie is geslaagd. | 
| Waarschuwing | Validatie heeft een waarschuwing. | 
De overgang starten
U kunt de cutover initiëren met behulp van Azure Portal of Azure CLI.
Voor de optie Valideren en migreren moet de gebruiker een extra stap voltooien om de cutover-actie te activeren. Nadat het kopiëren of klonen van de basisgegevens is voltooid, wordt de migratie verplaatst naar de Waiting for user action status en de Waiting for cutover trigger substatus. In deze status kan de gebruiker de cutover activeren vanuit de portal door de migratie te selecteren.
Voordat u cutover start, is het belangrijk om ervoor te zorgen dat:
- Schrijfbewerkingen naar de bron worden gestopt. 
latencyDe waarde is 0 of dicht bij 0. Delatencyinformatie kan worden verkregen via het scherm met migratiedetails, zoals hieronder wordt weergegeven: - 
              
latencyde waarde afneemt tot 0 of dicht bij 0 - De 
latencywaarde geeft aan wanneer het doel voor het laatst is gesynchroniseerd met de bron. Schrijven naar de bron kan op dit moment worden gestopt en er kan een cutover worden gestart. Als er veel verkeer bij de bron is, is het raadzaam om eerst schrijfbewerkingen te stoppen, zodatlatencydeze dicht bij 0 kunnen komen en er vervolgens een cutover wordt gestart. 
De cutover-bewerking past alle wijzigingen in behandeling van de bronserver toe op de doelserver en voltooit de migratie. Als u een cutover activeert, zelfs met een niet-nulwaarde latency, stopt de replicatie tot op dat moment. Alle gegevens van de bron tot het cutover-punt worden overgebracht naar het doel. Als u een latentie van 15 minuten ondervindt op het cutover-punt, worden alle wijzigingen in de gegevens in de afgelopen 15 minuten toegepast op het doel.
De tijd is afhankelijk van de hoeveelheid wijzigingen in de afgelopen 15 minuten. Daarom wordt aanbevolen dat de latentie naar nul of bijna nul gaat voordat de cutover wordt geactiveerd.
- De migratie gaat naar de 
Succeededstatus wanneer deMigrating datasubstatus of de cutover (bij online migratie) is voltooid. Als er een probleem is met deMigrating datasubstatus, wordt de migratie verplaatst naar eenFailedstatus. 
De migratie controleren wanneer deze is voltooid
Nadat u de databases hebt voltooid, moet u de gegevens tussen de bron en het doel handmatig valideren en controleren of alle objecten in de doeldatabase zijn gemaakt.
Na de migratie kunt u de volgende taken uitvoeren:
Controleer de gegevens op uw flexibele server en zorg ervoor dat dit een exacte kopie is van het bronexemplaar.
Schakel na verificatie de optie voor hoge beschikbaarheid in op uw flexibele server indien nodig.
Wijzig de SKU van de flexibele server zodat deze overeenkomt met de toepassingsbehoeften. Voor deze wijziging moet de databaseserver opnieuw worden opgestart.
Als u serverparameters wijzigt van de standaardwaarden in het bronexemplaar, kopieert u die serverparameterwaarden in 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.