Självstudie: Migrera RDS PostgreSQL till Azure DB for PostgreSQL online med DMS
Du kan använda Azure Database Migration Service för att migrera databaser från en RDS PostgreSQL-instans till Azure Database for PostgreSQL medan källdatabasen förblir online under migreringen. Med andra ord kan migreringen ske med minimal avbrottstid för programmet. I den här självstudien migrerar du exempeldatabasen DVD Rental från en instans av RDS PostgreSQL 9.6 till Azure Database for PostgreSQL med hjälp av onlinemigreringsaktiviteten i Azure Database Migration Service.
I den här guiden får du lära dig att:
- Migrera exempelschemat med hjälp av pg_dump verktyg.
- Skapa en instans av Azure Database Migration Service.
- Skapa ett migreringsprojekt med hjälp av Azure Database Migration Service.
- Köra migreringen.
- Övervaka migreringen.
- Utför en migreringsmigrering.
Anteckning
Användning av Azure Database Migration Service för att utföra en onlinemigrering kräver att en instans skapas baserat på prisnivån Premium. Mer information finns i på prissättningssidan för Azure Database Migration Service. Vi krypterar disken för att förhindra datastöld under migreringsprocessen.
Viktigt
För optimala migreringsfunktioner rekommenderar Microsoft att skapa en instans av Azure Database Migration Service i samma Azure-region som måldatabasen. Att flytta data mellan regioner eller geografiska områden kan göra migreringsprocessen långsammare och leda till fel.
Tips
När du migrerar databaser till Azure med hjälp av Azure Database Migration Service kan du göra en offline- eller en online migrering. Med en offlinemigrering startar programmets frånkopplade tillstånd när migreringen startar. Med onlinemigrering begränsas det frånkopplade tillståndet till tiden för att genomföra snabb migrering vid slutet av migreringen. Vi rekommenderar att du testar en offlinemigrering för att avgöra om det frånkopplade tillståndet är godtagbart. Om det inte är det kan du utföra en onlinemigrering.
Den här artikeln beskriver hur du utför en onlinemigrering från en lokal instans av PostgreSQL till Azure Database for PostgreSQL.
Förutsättningar
För att slutföra den här kursen behöver du:
Ladda ned och installera PostgreSQL Community Edition 9.5, 9.6 eller 10. PostgreSQL-källserverversionen måste vara 9.5.11, 9.6.7, 10 eller senare. Mer information finns i artikeln Versioner av PostgreSQL Database som stöds.
Observera också att målversionen Azure Database for PostgreSQL vara lika med eller senare än RDS PostgreSQL-versionen. Rds PostgreSQL 9.6 kan till exempel bara migrera till Azure Database for PostgreSQL 9.6, 10 eller 11, men inte till Azure Database for PostgreSQL 9.5.
Skapa en instans av Azure Database for PostgreSQL eller Azure Database for PostgreSQL – Hyperskala (Citus). Mer information om hur du ansluter till PostgreSQL-servern med pgAdmin finns i det här avsnittet i dokumentet.
Skapa en Microsoft Azure Virtual Network för Azure Database Migration Service med hjälp av Azure Resource Manager-distributionsmodellen, som ger plats-till-plats-anslutning till dina lokala källservrar med hjälp av ExpressRoute eller VPN. Mer information om hur du skapar ett virtuellt nätverk finns i Virtual Network-dokumentationenoch i synnerhet snabbstartsartiklarna med stegvisa detaljer.
Se till att reglerna för nätverkssäkerhetsgruppen för det virtuella nätverket inte blockerar den utgående porten 443 för ServiceTag för ServiceBus, Storage och AzureMonitor. Mer information om NSG-trafikfiltrering för virtuella nätverk finns i artikeln Filtrera nätverkstrafik med nätverkssäkerhetsgrupper.
Konfigurera din Windows-brandvägg för databasmotoråtkomst.
Öppna brandväggen Windows att tillåta Azure Database Migration Service åtkomst till PostgreSQL-källservern, som som standard är TCP-port 5432.
När du använder en brandväggsinstallation framför dina källdatabaser kanske du måste lägga till brandväggsregler för att tillåta Azure Database Migration Service att komma åt källdatabaserna för migrering.
Skapa en brandväggsregel på servernivå för Azure Database for PostgreSQL att tillåta Azure Database Migration Service åtkomst till måldatabaserna. Ange undernätsintervallet för det virtuella nätverk som används för Azure Database Migration Service.
Konfigurera AWS RDS PostgreSQL för replikering
Om du vill skapa en ny parametergrupp följer du instruktionerna från AWS i artikeln Arbeta med DB-parametergrupper.
Använd huvudanvändarnamnet för att ansluta till källan från Azure Database Migration Service. Om du använder ett annat konto än huvudanvändarkontot måste kontot ha rds_superuser rollen och rds_replication rollen. Rollen rds_replication ger behörighet att hantera logiska platser och strömma data med hjälp av logiska platser.
Skapa en ny parametergrupp med följande konfiguration:
a. Ange rds.logical_replication i db-parametergruppen till 1.
b. max_wal_senders =[antal samtidiga aktiviteter] – Parametern max_wal_senders anger antalet samtidiga aktiviteter som kan köras, rekommenderar 10 aktiviteter.
c. max_replication_slots – = [antal platser] rekommenderar vi att du anger fem platser.
Associera parametergruppen som du skapade till RDS PostgreSQL-instansen.
Migrera schemat
Extrahera schemat från källdatabasen och tillämpa på måldatabasen för att slutföra migreringen av alla databasobjekt, till exempel tabellscheman, index och lagrade procedurer.
Det enklaste sättet att endast migrera schemat är att använda pg_dump med alternativet -s. Mer information finns i exemplen i självstudien om Postgres pg_dump.
pg_dump -o -h hostname -U db_username -d db_name -s > your_schema.sqlOm du till exempel vill dumpa en schemafil för dvdrental-databasen använder du följande kommando:
pg_dump -o -h localhost -U postgres -d dvdrental -s > dvdrentalSchema.sqlSkapa en tom databas i måltjänsten, som är Azure Database for PostgreSQL. Information om hur du ansluter och skapar en databas finns i någon av följande artiklar:
Importera schemat till måltjänsten, som är Azure Database for PostgreSQL. Kör följande kommando för att återställa schemadumpfilen:
psql -h hostname -U db_username -d db_name < your_schema.sqlExempel:
psql -h mypgserver-20170401.postgres.database.azure.com -U postgres -d dvdrental < dvdrentalSchema.sql
Anteckning
Migreringstjänsten hanterar aktivera/inaktivera externa nycklar och utlösare internt för att säkerställa en tillförlitlig och robust datamigrering. Därför behöver du inte bekymra dig om att göra några ändringar i måldatabasschemat.
Registrera resursprovidern Microsoft.DataMigration
Logga in på Azure-portalen. Sök efter och välj Prenumerationer.

Välj den prenumeration där du vill skapa instansen av Azure Database Migration Service och välj sedan Resursproviders.

Sök efter migrering och välj sedan Registrera för Microsoft.DataMigration.

Skapa en instans av Azure Database Migration Service
I Azure Portal väljer du + Skapa en resurs, söker efter Azure Database Migration Service och väljer sedan Azure Database Migration Service i listrutan.

På sidan Azure Database Migration Service väljer du Skapa.

På sidan Create Migration Service anger du ett namn för tjänsten, prenumerationen och en ny eller befintlig resursgrupp.
Välj den plats där du vill skapa instansen av Azure Database Migration Service.
Välj ett befintligt virtuellt nätverk eller skapa ett nytt.
Det virtuella nätverket ger Azure Database Migration Service åtkomst till PostgreSQL-källinstansen och målinstansen Azure Database for PostgreSQL målinstansen.
Mer information om hur du skapar ett virtuellt nätverk i Azure Portal finns i artikeln Skapa ett virtuellt nätverk med hjälp av Azure Portal.
Välj en prisnivå. För den här onlinemigrering måste du välja prisnivån Premium: 4vCores.

Välj Skapa för att skapa tjänsten.
Skapa ett migreringsprojekt
När tjänsten har skapats letar du reda på den i Azure Portal, öppnar den och skapar sedan ett nytt migreringsprojekt.
I Azure Portal väljer du Alla tjänster, söker efter Azure Database Migration Service och väljer sedan Azure Database Migration Services.

På skärmen Azure Database Migration Services söker du efter namnet på den Azure Database Migration Service-instans som du skapade, väljer instansen och väljer sedan + Ny Project.
På sidan Nytt migreringsprojekt anger du ett namn för projektet. I textrutan Typ av källserver väljer du AWS RDS for PostgreSQL och i textrutan Målservertyp väljer du sedan Azure Database for PostgreSQL.
I avsnittet Välj typ av aktivitet väljer du Online-datamigrering.
Viktigt
Se till att välja Online-datamigrering; offlinemigrering stöds inte för det här scenariot.

Anteckning
Alternativt kan du välja Skapa endast projekt för att skapa migreringsprojektet nu och köra migreringen senare.
Välj Spara.
Välj Skapa och kör aktivitet för att skapa projektet och köra migreringsaktiviteten.
Anteckning
Anteckna de förutsättningar som krävs för att konfigurera onlinemigrering på bladet för att skapa projekt.
Ange källinformation
På skärmen Lägg till källinformation anger du anslutningsinformationen för PostgreSQL-källinstansen.

Ange målinformation
Välj Spara. På skärmen Målinformation anger du anslutningsinformationen för mål-Azure Database for PostgreSQL-servern, som är föreetablead och som har schemat för DVD-uthyrning distribuerat med hjälp av pg_dump.

Välj Spara och mappa sedan på sidan Mappa till måldatabaser käll- och måldatabasen för migrering.
Om måldatabasen innehåller samma databasnamn som källdatabasen väljer Azure Database Migration Service måldatabasen som standard.

Välj Spara. I rutan Aktivitetsnamn på skärmen Migreringssammanfattning anger du ett namn för migreringsaktiviteten och granskar sedan sammanfattningen för att se till att informationen för källa och mål matchar det du angav tidigare.

Köra migreringen
Välj Kör migrering.
Migreringsaktivitetsfönstret visas och Status för aktiviteten är Initieras.
Övervaka migreringen
På migreringsaktivitetssidan väljer du Uppdatera för att uppdatera visningen tills Status för migreringen är Körs.

Under DATABASNAMN väljer du en specifik databas för att komma till migreringsstatusen för åtgärder för fullständig datainläsning och inkrementell datasynkronisering.
Fullständig datainläsning visar den första inläsningsmigreringsstatusen, medan inkrementell datasynkronisering visar status för ändringsdatainfångst (CDC).


Utföra snabbmigrering
När den första fullständiga inläsningen har slutförts markeras databaserna som Redo för cutover.
När du är redo att slutföra databasmigreringen väljer du Starta snabb.
Vänta tills räknaren Väntande ändringar visar 0 för att se till att alla inkommande transaktioner till källdatabasen stoppas, markera kryssrutan Bekräfta och välj sedan Tillämpa.

När statusen för databasmigrering är Slutförd ansluter du dina program till den nya Azure Database for PostgreSQL databasen.
Onlinemigrering av en lokal instans av RDS PostgreSQL till Azure Database for PostgreSQL är klar.
Nästa steg
- Mer information om Azure Database Migration Service finns i artikeln What is the Azure Database Migration Service? (Vad är Azure Database Migration Service?).
- Information om Azure Database for PostgreSQL finns i artikeln Vad är Azure Database for PostgreSQL?.
- Om du har andra frågor kan du skicka ett e-postmeddelande till Ställ alias för Azure Database Migrations.