Kurz: Migrace PostgreSQL do Azure Database for PostgreSQL online pomocí DMS (classic) přes Azure Portal

Pomocí Azure Database Migration Service můžete migrovat databáze z místní instance PostgreSQL do Azure Database for PostgreSQL s minimálními výpadky aplikace. V tomto kurzu migrujete ukázkovou databázi listdb z místní instance PostgreSQL 13.10 do Azure Database for PostgreSQL pomocí aktivity online migrace v Azure Database Migration Service.

V tomto kurzu se naučíte:

  • Migrujte ukázkové schéma pomocí nástroje pg_dump.
  • Vytvořte instanci služby Azure Database Migration Service.
  • Vytvořte projekt migrace v Azure Database Migration Service.
  • Spuštění migrace
  • Monitorujte migraci.
  • Proveďte přímou migraci.

Poznámka

Použití Azure Database Migration Service k provedení online migrace vyžaduje vytvoření instance na základě cenové úrovně Premium. Disk zašifrujeme, abychom zabránili krádeži dat během procesu migrace.

Důležité

Pro optimální migraci Microsoft doporučuje vytvořit instanci Azure Database Migration Service ve stejné oblasti Azure jako cílová databáze. Přenášení dat mezi oblastmi geografickými lokalitami může zpomalit proces migrace a způsobit chyby.

Požadavky

Pro absolvování tohoto kurzu je potřeba provést následující:

  • Stáhněte a nainstalujte komunitní edici PostgreSQL. Verze zdrojového serveru PostgreSQL musí být >= 9.4. Další informace najdete v tématu Podporované verze databáze PostgreSQL.

    Všimněte si také, že cílová verze Azure Database for PostgreSQL musí být stejná jako místní verze PostgreSQL nebo novější. Například PostgreSQL 12 může migrovat na verzi Azure Database for PostgreSQL >= 12, ale ne na Azure Database for PostgreSQL 11.

  • Vytvoření serveru Azure Database for PostgreSQL

  • Vytvořte Virtual Network Microsoft Azure pro Azure Database Migration Service pomocí modelu nasazení Azure Resource Manager, který poskytuje připojení site-to-site k místním zdrojovým serverům pomocí ExpressRoute nebo VPN. Další informace o vytvoření virtuální sítě najdete v dokumentaci k Virtual Network a zejména v článcích rychlý start s podrobnými podrobnostmi.

    Poznámka

    Pokud během instalace virtuální sítě používáte ExpressRoute s partnerským vztahem sítě s Microsoftem, přidejte do podsítě, ve které bude služba zřízena, následující koncové body služby:

    • Cílový koncový bod databáze (například koncový bod SQL, koncový bod služby Azure Cosmos DB atd.)
    • Koncový bod úložiště
    • Koncový bod služby Service Bus

    Tato konfigurace je nezbytná, protože Azure Database Migration Service nemá připojení k internetu.

  • Ujistěte se, že pravidla skupiny zabezpečení sítě (NSG) pro vaši virtuální síť neblokují odchozí port 443 servicetag pro ServiceBus, Storage a AzureMonitor. Další podrobnosti o filtrování provozu NSG virtuální sítě najdete v článku Filtrování síťového provozu pomocí skupin zabezpečení sítě.

  • Nakonfigurujte bránu Windows Firewall pro přístup k databázovému stroji.

  • Otevřete bránu Windows Firewall a povolte Azure Database Migration Service přístup ke zdrojovému serveru PostgreSQL, což je ve výchozím nastavení port TCP 5432.

  • Pokud před zdrojovými databázemi používáte zařízení brány firewall, možná bude potřeba přidat pravidla brány firewall, která službě Azure Database Migration Service povolí přístup ke zdrojovým databázím za účelem migrace.

  • Vytvořte pravidlo brány firewall na úrovni serveru pro Azure Database for PostgreSQL, které Azure Database Migration Service umožní přístup k cílovým databázím. Zadejte rozsah podsítě virtuální sítě používané pro Azure Database Migration Service.

  • Povolte logickou repliku v souboru postgresql.config a nastavte následující parametry:

    • wal_level = logical
    • max_replication_slots = [počet slotů], doporučujeme nastavit na pět slotů.
    • max_wal_senders = [počet souběžných úloh] - parametr max_wal_senders nastaví počet souběžných úloh, které můžete spustit, doporučujeme nastavení na 10 úloh
  • Uživatel musí mít roli REPLIKACE na serveru, který je hostitelem zdrojové databáze.

Důležité

Všechny tabulky v existující databázi potřebují primární klíč, aby bylo možné synchronizovat změny s cílovou databází.

Migrace ukázkového schématu

K dokončení všech databázových objektů, jako jsou schémata tabulek, indexy a uložené procedury, potřebujeme extrahovat schéma ze zdrojové databáze a použít ho na databázi.

  1. Pomocí příkazu pg_dump -s můžete vytvořit soubor schématu s výpisem paměti pro databázi.

    pg_dump -O -h hostname -U db_username -d db_name -s > your_schema.sql
    

    Pokud chcete například vytvořit soubor s výpisem paměti schématu pro databázi listdb :

    pg_dump -O -h localhost -U postgres -d listdb -s -x > listdbSchema.sql
    

    Další informace o používání nástroje pg_dump, viz příklady v kurzu pg-dump.

  2. Vytvořte prázdnou databázi v cílovém prostředí, což je Azure Database for PostgreSQL.

    Podrobnosti o připojení a vytvoření databáze najdete v článku Vytvoření Azure Database for PostgreSQL serveru v Azure Portal.

  3. Importujte schéma do cílové databáze, kterou jste vytvořili pomocí obnovení souboru se schématem výpisu paměti.

    psql -h hostname -U db_username -d db_name < your_schema.sql
    

    Příklad:

    psql -h mypgserver-20170401.postgres.database.azure.com  -U postgres -d migratedb < listdbSchema.sql
    

    Poznámka

    Služba Migration Service interně zpracovává povolení/zakázání cizích klíčů a triggery, aby byla zajištěna spolehlivá a robustní migrace dat. V důsledku toho si nemusíte dělat starosti s prováděním jakýchkoli úprav schématu cílové databáze.

Registrace poskytovatele prostředků

Než vytvoříte první instanci služby Database Migration Service, zaregistrujte poskytovatele prostředků Microsoft.DataMigration.

  1. Přihlaste se k webu Azure Portal. Vyhledejte a vyberte Předplatná.

    Zobrazení předplatných na portálu

  2. Vyberte předplatné, ve kterém chcete vytvořit instanci Azure Database Migration Service, a pak vyberte Poskytovatelé prostředků.

    Zobrazení poskytovatelů prostředků

  3. Vyhledejte migraci a pak vyberte Zaregistrovat proMicrosoft.DataMigration.

    Registrace poskytovatele prostředků

Vytvoření instance služby Azure Database Migration Service

  1. V nabídce Azure Portal nebo na domovské stránce vyberte Vytvořit prostředek. Vyhledejte a vyberte Azure Database Migration Service.

    Azure Marketplace

  2. Na obrazovce Azure Database Migration Service vyberte Vytvořit.

    Vytvoření instance služby Azure Database Migration Service

    Vyberte příslušný typ zdrojového serveru a typ cílového serveru a zvolte možnost Database Migration Service (Classic).

    Výběr Database Migration Service (klasického) scénáře

  3. Na obrazovce Základy vytvoření služby Migration Service :

    • Vyberte předplatné.
    • Vytvořte novou skupinu prostředků nebo zvolte existující skupinu prostředků.
    • Zadejte název instance Azure Database Migration Service.
    • Vyberte umístění, ve kterém chcete vytvořit instanci Azure Database Migration Service.
    • Jako režim služby zvolte Azure .
    • Vyberte cenovou úroveň. Další informace o nákladech a cenových úrovních najdete na stránce s cenami.

    Konfigurace základního nastavení Azure Database Migration Service instance

    • Až skončíte, vyberte Další: Sítě.
  4. Na obrazovce Vytvořit síť služby Migration Service :

    • Vyberte existující virtuální síť nebo vytvořte novou. Virtuální síť poskytuje Azure Database Migration Service přístup ke zdrojovému serveru a cílové instanci. Další informace o tom, jak vytvořit virtuální síť v Azure Portal, najdete v článku Vytvoření virtuální sítě pomocí Azure Portal.

    Konfigurace nastavení sítě Azure Database Migration Service instance

    • Vyberte Zkontrolovat a vytvořit , abyste zkontrolovali podrobnosti, a pak vyberte Vytvořit a vytvořte službu.

    • Po chvíli se vaše instance služby Azure Database Migration Service vytvoří a bude připravená k použití:

    Vytvořená služba Migration Service

Vytvoření projektu migrace

Po vytvoření služby ji vyhledejte na webu Azure Portal, otevřete ji a pak vytvořte nový projekt migrace.

  1. Na webu Azure Portal vyberte Všechny služby, vyhledejte „Azure Database Migration Service“ a pak vyberte Služby Azure Database Migration Service.

    Snímek obrazovky s Azure Database Migration Service hledání

  2. Na obrazovce Azure Database Migration Services vyhledejte název Azure Database Migration Service instance, kterou jste vytvořili, vyberte instanci a pak vyberte + Nový projekt migrace.

    Snímek obrazovky s vyhledáváním v instanci Azure Database Migration Service

  3. Na obrazovce Nový projekt migrace zadejte název projektu, v textovém poli Typ zdrojového serveru vyberte PostgreSQL a v textovém poli Typ cílového serveru vyberte Azure Database for PostgreSQL.

  4. V části Typ aktivity migrace vyberte Online migrace dat.

    Snímek obrazovky s možností Vytvořit nový projekt migrace

    Poznámka

    Případně můžete zvolit Možnost Vytvořit pouze projekt a vytvořit projekt migrace nyní a provést migraci později.

  5. Pokud chcete k migraci dat úspěšně použít Azure Database Migration Service, vyberte Vytvořit a spustit aktivitu.

Zadání podrobností o zdroji

  1. Na obrazovce Přidat podrobnosti o zdroji zadejte podrobnosti o připojení ke zdrojové instanci PostgreSQL.

    Snímek obrazovky Přidat podrobnosti o zdroji

Zadání podrobností o cíli

  1. Na obrazovce Podrobnosti cíle zadejte podrobnosti o připojení pro cílový Azure Database for PostgreSQL – flexibilní server, což je předem zřízený instance, do které bylo schéma nasazeno pomocí pg_dump.

    Snímek obrazovky Přidat podrobnosti cíle

  2. Klikněte na Další:Vybrat databáze a pak na obrazovce Vybrat databáze namapujte zdroj a cílovou databázi pro migraci.

    Pokud cílová databáze obsahuje stejný název databáze jako zdrojová databáze, Azure Database Migration Service ve výchozím nastavení vybere cílovou databázi.

    Snímek obrazovky mapových databází s cílovou obrazovkou

  3. Klikněte na Další:Vybrat tabulky a pak na obrazovce Vybrat tabulky vyberte požadované tabulky, které je potřeba migrovat.

    Snímek obrazovky s výběrem tabulek pro migraci

  4. Klikněte na Další:Konfigurovat nastavení migrace a pak na obrazovce Konfigurovat nastavení migrace přijměte výchozí hodnoty.

    Snímek obrazovky s konfigurací nastavení migrace

  5. Na obrazovce Souhrn migrace zadejte do textového pole Název aktivity název aktivity migrace a zkontrolujte souhrn a ujistěte se, že podrobnosti o zdroji a cíli odpovídají dříve zadaným podrobnostem.

    Snímek obrazovky se souhrnem migrace

Spuštění migrace

  • Vyberte Spustit migraci.

    Zobrazí se okno aktivity migrace a stav aktivity by se měl aktualizovat tak, aby se zobrazoval probíhající zálohování.

Monitorování migrace

  1. Na obrazovce aktivity migrace vyberte Aktualizovat a aktualizujte zobrazení, dokud se Stav migrace nezmění na Dokončeno.

    Snímek obrazovky monitorování migrace

  2. Po dokončení migrace vyberte v části Název databáze konkrétní databázi, abyste získali stav migrace u operací Úplné načtení dat a Přírůstková synchronizace dat .

    Poznámka

    Úplné načtení dat zobrazuje stav migrace počátečního načtení, zatímco přírůstková synchronizace dat zobrazuje stav change data capture (CDC).

    Snímek obrazovky s podrobnostmi o úplném načtení migrace

    Snímek obrazovky s podrobnostmi přírůstkového načtení migrace

Provedení přímé migrace

Po dokončení počátečního úplného načtení se databáze označí jako Připraveno k přímé migraci.

  1. Jakmile budete připraveni dokončit migraci databází, vyberte Spustit přímou migraci.

  2. Počkejte, až se čítač čekajících změn zobrazí 0 , aby se zajistilo, že se zastaví všechny příchozí transakce do zdrojové databáze, zaškrtněte políčko Potvrdit a pak vyberte Použít.

    Snímek obrazovky s dokončováním přímé migrace

  3. Když se u migrace databáze zobrazí stav Dokončeno, vytvořte znovu sekvence (pokud jsou k dispozici) a připojte své aplikace k nové cílové instanci Azure Database for PostgreSQL.

Další kroky