Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här artikeln beskriver hur du migrerar en PostgreSQL-instans från dina lokala eller virtuella Azure-datorer till Azure Database for PostgreSQL i onlineläge.
Migreringstjänsten i Azure Database for PostgreSQL är en fullständigt hanterad tjänst som är integrerad i Azure Portal och Azure CLI. Den är utformad för att förenkla migreringsresan till Azure Database for PostgreSQL Flexibel Server.
- Förutsättningar
- Utföra migreringen
- Övervaka migreringen
- Initiera övergången
- Kontrollera migreringen när den är klar
Förutsättningar
För att påbörja migreringen behöver du följande förutsättningar:
Innan du påbörjar migreringen med Azure Database for PostgreSQL-migreringstjänsten är det viktigt att uppfylla följande krav, särskilt utformade för onlinemigreringsscenarier.
- Verifiera källversionen
- Installera test_decoding – Källkonfiguration
- Konfigurera målkonfiguration
- Aktivera CDC som källa
- Konfigurera nätverkskonfiguration
- Aktivera tillägg
- Kontrollera serverparametrar
- Kontrollera användare och roller
Verifiera källversionen
PostgreSQL-källserverversionen måste vara 9.5 eller senare.
Om postgreSQL-källversionen är mindre än 9,5 uppgraderar du den till 9,5 eller senare innan du påbörjar migreringen.
Anteckning
Migreringstjänsten i Azure Database for PostgreSQL stöder anslutningar med hjälp av IP-adressen för källan Google Cloud SQL för PostgreSQL. Formatet myproject:myregion:myinstance stöds inte.
Installera test_decoding – källkonfiguration
- test_decoding tar emot WAL via den logiska avkodningsmekanismen och avkodar den till textrepresentationer av de åtgärder som utförs.
- I Google Cloud SQL for PostgreSQL är plugin-programmet test_decoding förinstallerat och redo för logisk replikering. På så sätt kan du enkelt konfigurera logiska replikeringsfack och strömma WAL-ändringar, vilket underlättar användningsfall som cdc (change data capture) eller replikering till externa system.
- Mer information om plugin-programmet för test avkodning finns i PostgreSQL-dokumentationen
Konfigurera målkonfiguration
- Innan du migrerar måste Azure Database for PostgreSQL – flexibel server skapas.
- SKU som etablerats för Azure Database for PostgreSQL – Flexibel Server ska motsvara källan.
- Om du vill skapa en ny Azure Database for PostgreSQL går du till Skapa en flexibel Azure Database for PostgreSQL-server
Aktivera CDC som källa
- 
              test_decodingplugin-programmet för logisk avkodning samlar in ändrade poster från källan.
- Kör följande SQL-kommando för att säkerställa att migreringsanvändaren har nödvändiga replikeringsbehörigheter:
ALTER USER <user> WITH REPLICATION;
- Gå till Google Cloud SQL PostgreSQL-instansen i Google Cloud Console, välj instansnamnet för att öppna informationssidan, välj knappen Redigera och ändra följande flaggor i avsnittet Flaggor: - Ställ in flagga cloudsql.logical_decoding = on
- Ange en flagga max_replication_slotstill ett värde som är större än ett. Värdet ska vara större än det antal databaser som valts för migrering.
- Ange en flagga max_wal_senderstill ett värde som är större än ett. Det bör vara minst samma sommax_replication_slots, plus antalet avsändare som redan används på din instans.
- Flaggan wal_sender_timeoutavslutar inaktiva replikeringsanslutningar längre än det angivna antalet millisekunder. Om värdet anges till 0 (noll) inaktiveras tidsgränsmekanismen och är en giltig inställning för migrering.
 
- Ställ in flagga 
- För att förhindra att onlinemigreringen får slut på lagringsutrymme för loggar på den flexibla målservern, se till att du har tillräckligt med utrymme för tablespace genom att använda en tilldelad hanterad disk. För att uppnå detta inaktiverar du serverparametern - azure.enable_temp_tablespaces_on_local_ssdunder migreringens varaktighet och återställer den till det ursprungliga tillståndet efter migreringen.
Konfigurera nätverkskonfiguration
Nätverkskonfigurationen är avgörande för att migreringstjänsten ska fungera korrekt. Se till att PostgreSQL-källservern kan kommunicera med Azure Database for PostgreSQL-målservern. Följande nätverkskonfigurationer är viktiga för en lyckad migrering.
Information om nätverkskonfiguration finns i Nätverksguide för migreringstjänsten.
Aktivera tillägg
För att säkerställa en lyckad migrering med hjälp av migreringstjänsten i Azure Database for PostgreSQL kan du behöva verifiera tillägg till postgreSQL-källinstansen. Tillägg innehåller funktioner och funktioner som kan krävas för ditt program. Kontrollera att du verifierar tilläggen på PostgreSQL-källinstansen innan du påbörjar migreringsprocessen.
I målinstansen av Azure Database for PostgreSQL – flexibel server aktiverar du tillägg som stöds och som identifieras i PostgreSQL-källinstansen.
Mer information finns i Tillägg och moduler.
Kontrollera serverparametrar
Dessa parametrar migreras inte automatiskt till målmiljön och måste konfigureras manuellt.
- Matcha serverparametervärden från PostgreSQL-källdatabasen till Azure Database for PostgreSQL genom att komma åt avsnittet "Serverparametrar" i Azure Portal och uppdatera värdena manuellt. 
- Spara parameterändringarna och starta om Azure Database for PostgreSQL för att tillämpa den nya konfigurationen om det behövs. 
Kontrollera användare och roller
När du migrerar till Azure Database for PostgreSQL är det viktigt att hantera migreringen av användare och roller separat, eftersom de kräver manuella åtgärder:
- Manuell migrering av användare och roller: Användare och deras associerade roller måste migreras manuellt till Azure Database for PostgreSQL. För att underlätta den här processen kan du använda - pg_dumpallverktyget med- --globals-onlyflaggan för att exportera globala objekt som roller och användarkonton. Kör följande kommando och ersätt- <<username>>med det faktiska användarnamnet och- <<filename>>med önskat filnamn för utdata:- pg_dumpall --globals-only -U <<username>> -f <<filename>>.sql
- Begränsning av superanvändarroller: Azure Database for PostgreSQL stöder inte superanvändarroller. Därför måste användare med superanvändarbehörighet få dessa privilegier borttagna före migreringen. Se till att du justerar behörigheterna och rollerna i enlighet med detta. 
Genom att följa dessa steg kan du se till att användarkonton och roller migreras korrekt till Azure Database for PostgreSQL utan att stöta på problem som rör begränsningar för superanvändare.
Inaktivera hög tillgänglighet och läsrepliker i måldestinationen
- Det är avgörande att deaktivera hög tillgänglighet (tillförlitlighet) och läsrepliker i målmiljön. Dessa funktioner bör aktiveras först när migreringen har slutförts. 
- Genom att följa dessa riktlinjer kan du säkerställa en smidig migreringsprocess utan de tillagda variablerna som introduceras av HA och Read Replicas. När migreringen är klar och databasen är stabil kan du fortsätta med att aktivera dessa funktioner för att förbättra tillgängligheten och skalbarheten för databasmiljön i Azure. 
Utföra migreringen
Du kan migrera med hjälp av Azure-portalen eller Azure CLI.
Den här artikeln beskriver hur du använder Azure-portalen för att migrera din PostgreSQL-databas från en Google Cloud SQL for PostgreSQL-server till en Azure Database for PostgreSQL. Med Azure-portalen kan du utföra olika uppgifter, inklusive databasmigrering. Genom att följa stegen som beskrivs i den här självstudien kan du sömlöst överföra databasen till Azure och dra nytta av dess kraftfulla funktioner och skalbarhet.
Konfigurera migreringsuppgiften
Migreringstjänsten har en enkel, guidebaserad upplevelse av Azure Portal.
Använda Azure-portalen:
- Välj din Azure-databas för PostgreSQL-flexibel server. 
- I resursmenyn väljer du Migrering. 
- Välj Skapa för att gå igenom en guidebaserad serie flikar för att utföra en migrering till en flexibel server från en lokal eller virtuell Azure-dator. - Anteckning - Första gången du använder migreringstjänsten visas ett tomt rutnät med en uppmaning om att påbörja din första migrering. - Om migreringar till ditt flexibla servermål redan har skapats innehåller rutnätet nu information om migreringsförsök. 
Ställ in
Du måste ange flera detaljer som rör migreringen, till exempel migreringsnamn, källservertyp, alternativ och läge.
- Migreringsnamnet är den unika identifieraren för varje migrering till det här flexibla servermålet. Det här fältet accepterar endast alfanumeriska tecken och accepterar inte några specialtecken förutom ett bindestreck (-). Namnet kan inte börja med ett bindestreck och bör vara unikt för en målserver. Inga två migreringar till samma flexibla servermål kan ha samma namn. 
- Källservertyp – Beroende på din PostgreSQL-källa kan du välja Virtuell Azure-dator eller lokal server. 
- Migreringsalternativ – Gör att du kan utföra valideringar innan du utlöser en migrering. Du kan välja något av följande alternativ: - Verifiera – Kontrollerar serverns och databasens beredskap för migrering till målet.
- Verifiera och migrera – Utför validering innan en migrering utlöses. Om det inte finns några valideringsfel initieras migreringen.
 
Att välja alternativet Verifiera eller verifiera och migrera är alltid en bra idé för att utföra valideringar före migreringen innan du kör migreringen.
För att lära dig mer om valideringen före migrering, besök premigration.
- Med migreringsläget kan du välja läget för migreringen. Offline är standardalternativet. I det här fallet ändrar vi det till Online.
Välj Nästa: Körningsserver.
Körningsserver
Servern för migreringskörning är en specialiserad funktion inom migreringstjänsten i Azure Database for PostgreSQL, utformad för att fungera som mellanliggande server under migreringen. Det är en separat flexibel Azure Database for PostgreSQL-serverinstans som inte är målservern, men som används för att underlätta migreringen av databaser från en källmiljö som endast är tillgänglig via ett privat nätverk.
För mer information om runtime-servern, besök Migration Runtime Server.
Källserver
På fliken Källserver uppmanas du att ange information om den källa som valts på fliken Installation , som är källan till databaserna.
- Servernamn – Ange namnet på värden eller IP-adressen för PostgreSQL-källservern.
- Port – portnummer för källservern.
- Administratörsinloggning – Namnet på administratörsanvändaren för PostgreSQL-källservern.
- Lösenord – Lösenord för administratörsinloggningen som angetts för att ansluta till PostgreSQL-källservern.
- 
              SSL-läge – Värden som stöds är preferredochrequired. När SSL:en på PostgreSQL-källservern ärOFFanvänder duprefer. Om SSL:en på källservern ärONanvänder durequire. SSL-värden kan fastställas i postgresql.conf-filen på källservern.
- Testanslutning – Utför anslutningstestet mellan målet och källan. När anslutningen har slutförts kan du gå vidare till nästa flik. Det här testet syftar till att identifiera eventuella anslutningsproblem som kan finnas mellan mål- och källservrarna, inklusive verifiering av autentisering med de angivna autentiseringsuppgifterna. Det tar några sekunder att upprätta en testanslutning.
Efter den lyckade testanslutningen väljer du Nästa: Målserver.
Målserver
Fliken Målserver visar metadata för det flexibla servermålet, till exempel prenumerationsnamn, resursgrupp, servernamn, plats och PostgreSQL-version.
- Administratörsinloggning – Namnet på administratörsanvändaren för PostgreSQL-målservern.
- Lösenord – Lösenord för administratörsinloggningen som angetts för att ansluta till PostgreSQL-målservern.
- 
              Anpassat FQDN eller IP-adress: Det anpassade FQDN- eller IP-adressfältet är valfritt och kan användas när målet ligger bakom en anpassad DNS-server eller har anpassade DNS-namnområden, vilket gör det endast tillgängligt via specifika FQDN eller IP-adresser. Detta kan till exempel innehålla poster som production-flexible-server.example.com,198.1.0.2eller ett PostgreSQL FQDN,production-flexible-server.postgres.database.azure.comtill exempel , om den anpassade DNS-servern innehåller DNS-zonenpostgres.database.azure.comeller vidarebefordrar frågor för den här zonen till168.63.129.16, där FQDN löses i den offentliga eller privata DNS-zonen i Azure.
- Testanslutning – Utför anslutningstestet mellan källan och målet. När anslutningen har slutförts kan du gå vidare till nästa flik. Det här testet syftar till att identifiera eventuella anslutningsproblem som kan finnas mellan käll- och målservrarna, inklusive verifiering av autentisering med de angivna autentiseringsuppgifterna. Det tar några sekunder att upprätta en testanslutning.
Efter den lyckade testanslutningen väljer du Nästa: Databaser för att verifiera eller migrera
Databaser som ska verifieras eller migreras
Under fliken Databaser för att verifiera eller migrera kan du välja en lista över användardatabaser som ska migreras från postgreSQL-källservern.
När du har valt databaserna väljer du Nästa: Sammanfattning.
Sammanfattning
Fliken Sammanfattning sammanfattar all käll- och målinformation för att skapa verifieringen eller migreringen. Granska informationen och välj Starta validering och migrering.
Avbryt valideringen eller migreringen
Du kan avbryta pågående valideringar eller migreringar. Arbetsflödet måste ha statusen Pågår för att avbrytas. Du kan inte avbryta en validering eller migrering i statusen Lyckades eller Misslyckades .
Om du avbryter en validering stoppas all ytterligare valideringsaktivitet och valideringen flyttas till statusen Avbrytd .
Om du avbryter en migrering stoppas ytterligare migreringsaktivitet på din målserver och går till statusen Avbruten. Den släpper eller återställer inte några ändringar på målservern. Se till att radera databaserna på din målserver som ingår i en avbruten migrering.
Övervaka migreringen
När du har valt knappen Starta validering och migrering visas ett meddelande om att verifieringen eller migreringen lyckas om några sekunder. Du omdirigeras automatiskt till den flexibla serverns migreringssida . Posten visar Status som Pågår. Arbetsflödet tar 2 till 3 minuter att konfigurera migreringsinfrastrukturen och kontrollera nätverksanslutningar.
Rutnätet som visar migreringarna har följande kolumner: Namn, Status, Migreringsläge, Migreringstyp, Källserver, Källservertyp, Databaser, Varaktighet och Starttid. Posterna visas sorterade efter Starttid i fallande ordning, med den senaste posten överst. Du kan använda knappen Uppdatera i verktygsfältet för att uppdatera statusen för verifierings- eller migreringskörningen.
Information om migrering
Välj migreringsnamnet i rutnätet för att se den associerade informationen.
Kom ihåg att när du skapade migreringen i föregående steg konfigurerade du migreringsalternativet som Verifiera och migrera. I det här scenariot utförs valideringar först innan migreringen startar. När undertillståndet Utför nödvändiga steg har slutförts flyttas arbetsflödet till undertillståndet validering pågår.
- Om verifieringen har fel flyttas migreringen till ett feltillstånd . 
- Om verifieringen är klar utan fel startar migreringen och arbetsflödet flyttas till undertillståndet Migrera data. 
Valideringsinformation finns på instans- och databasnivå.
- 
              Valideringsinformation för instans
- Innehåller validering relaterad till anslutningskontrollen, källversionen, d.v.s. PostgreSQL-versionen >= 9.5 och parameterkontrollen för servern, om tilläggen är aktiverade i serverparametrarna för den flexibla Azure Database for PostgreSQL-servern.
 
- 
              Verifierings- och migreringsinformation för databaser
- Den innehåller validering av enskilda databaser relaterade till tillägg och sorteringsstöd i Azure Database for PostgreSQL – flexibel server.
 
Du kan se valideringsstatus och migreringsstatus under informationssidan för migrering.
Några möjliga migreringsstatusar:
Migreringsstatus
| Läge | beskrivning | 
|---|---|
| Pågår | Installationen av migreringsinfrastrukturen pågår eller så pågår den faktiska datamigreringen. | 
| Avbruten | Migreringen avbryts eller tas bort. | 
| Misslyckades | Migreringen misslyckades. | 
| Verifieringen misslyckades | Verifieringen misslyckades. | 
| Lyckades | Migreringen har slutförts. | 
| Väntar på användaråtgärd | Väntar på att användaren ska vidta åtgärder för övergång. | 
Information om migrering
| Understatus | beskrivning | 
|---|---|
| Utföra nödvändiga steg | Infrastrukturkonfiguration pågår för datamigrering. | 
| Validering pågår | Verifiering pågår. | 
| Ta bort databasen på målservern | Släpper redan befintlig databas på målservern. | 
| Migrering av data | Datamigrering pågår. | 
| Slutför migreringen | Migreringen är i slutfasen av slutförandet. | 
| Slutförd | Migreringen har slutförts. | 
| Misslyckades | Migreringen misslyckades. | 
Understatusar för validering
| Understatus | beskrivning | 
|---|---|
| Misslyckades | Verifieringen misslyckades. | 
| Lyckades | Valideringen har slutförts. | 
| Varning! | Verifieringen är i varningsläge. | 
Initiera övergången
Du kan initiera övergången med hjälp av Azure-portalen eller Azure CLI.
För alternativet Verifiera och migrera krävs det för att slutföra onlinemigreringen att användaren ytterligare måste utlösa cutover-åtgärden. När kopieringen eller kloningen av basdata har slutförts flyttas migreringen till Waiting for user action status och Waiting for cutover trigger understatus. I den här statusen kan användaren utlösa övergången från portalen genom att välja migreringen.
Innan du påbörjar övergången är det viktigt att se till att:
- Skrivningar till källan stoppas – latencyvärdet är 0 eller nära 0. Informationenlatencykan hämtas från skärmen för migreringsinformation enligt nedan:
- 
              latencyvärdet minskar till 0 eller nära 0
- Värdet latencyanger när målet senast synkroniserades med källan. Det går att stoppa skrivning till källan nu och påbörja ett övergångsförfarande. Om det är hög belastning på källan rekommenderar vi att du stoppar skrivningar först så attlatencykan närma sig 0 och sedan initieras en övergång.
Cutover-åtgärden tillämpar alla väntande ändringar från källservern på målservern och slutför migreringen. Om du utlöser en övergång, även om värdet inte är noll latency, stoppas replikeringen till den tidpunkten. Alla data från källan fram till övergångspunkten tillämpas sedan på målet. Om du upplever en latens på 15 minuter vid överlämningspunkten tillämpas alla ändringar som gjorts i data under de senaste 15 minuterna på målet.
Tiden beror på kvarvarande ändringar som inträffat under de senaste 15 minuterna. Därför rekommenderar vi att latensen går till noll eller nära noll innan du utlöser övergången.
- Migreringen flyttas till Succeeded-statusen närMigrating data-understatusen eller den slutliga övergången (i onlinemigreringen) har slutförts. Om det uppstår ett problem iMigrating dataunderstatus flyttas migreringen till statusFailed.
Kontrollera migreringen när den är klar
När du har slutfört databaserna måste du manuellt verifiera data mellan källa och mål och kontrollera att alla objekt i måldatabasen har skapats.
Efter migreringen kan du utföra följande uppgifter:
- Verifiera data på den flexibla servern och se till att det är en exakt kopia av källinstansen. 
- Efter verifiering aktiverar du alternativet för hög tillgänglighet på den flexibla servern efter behov. 
- Ändra SKU:n för den flexibla servern så att den matchar programbehoven. Den här ändringen kräver en omstart av databasservern. 
- Om du ändrar några serverparametrar från deras standardvärden i källinstansen kopierar du dessa serverparametervärden på den flexibla servern. 
- Kopiera andra serverinställningar, till exempel taggar, aviseringar och brandväggsregler (om tillämpligt), från källinstansen till den flexibla servern. 
- Gör ändringar i ditt program för att peka anslutningssträng till en flexibel server. 
- Övervaka databasens prestanda noggrant för att se om det kräver prestandajustering. 
 
              
               
              
               
              
               
              
               
              
               
              
               
              
               
              
               
              
              