Sdílet prostřednictvím


Kurz: Online migrace PostgreSQL do Služby Azure Database for PostgreSQL pomocí DMS (classic) přes Azure Portal

Důležité

Doporučujeme používat novou službu migrace ve službě Azure Database for PostgreSQL pro efektivnější a efektivnější migraci. Tato služba zjednodušuje proces tím, že podporuje celou řadu zdrojových prostředí a zajišťuje bezproblémový přechod na Azure Database for PostgreSQL.

Další informace o službě Azure Database Migration Service najdete v článku Co je Azure Database Migration Service?

Službu Azure Database Migration Service můžete použít k migraci databází z místní instance PostgreSQL do služby Azure Database for PostgreSQL s minimálními výpadky aplikace. V tomto kurzu provedete migraci ukázkové databáze listdb z místní instance PostgreSQL 13.10 do Služby Azure Database for PostgreSQL pomocí aktivity online migrace ve službě 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 ve službě Azure Database Migration Service.
  • Spuštění migrace
  • Monitorujte migraci.
  • Proveďte přímou migraci.

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

Důležité

Pro optimální prostředí migrace microsoft doporučuje vytvořit instanci služby Azure Database Migration Service ve stejné oblasti Azure jako cílovou databázi. 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 PostgreSQL na flexibilním serveru Azure Database for PostgreSQL.

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

  • Vytvoření serveru Azure Database for PostgreSQL

  • Vytvořte pro službu Azure Database Migration Service síť Microsoft Azure Virtual Network s použitím modelu nasazení Azure Resource Manager, který poskytuje možnosti připojení typu Site-to-Site k místním zdrojovým serverům prostřednictvím ExpressRoute nebo sítě VPN. Další informace o vytváření virtuální sítě najdete v dokumentaci k virtuální síti a zejména v článcích rychlého startu s podrobnými podrobnostmi.

    Pokud během instalace virtuální sítě použijete ExpressRoute s partnerským vztahem sítě k Microsoftu, 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 pomocí skupin zabezpečení virtuální sítě najdete v článku Filtrování provozu sítě s použitím 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 službě Azure Database Migration Service přístup ke zdrojovému serveru PostgreSQL, který ve výchozím nastavení probíhá přes port TCP 5432.

  • Při použití zařízení brány firewall před zdrojovými databázemi možná budete muset přidat pravidla brány firewall, která službě Azure Database Migration Service umožní přístup ke zdrojovým databázím pro migraci.

  • Vytvořte pro službu Azure Database for PostgreSQL pravidlo brány firewall na úrovni serveru, které službě Azure Database Migration Service povolí přístup k cílovým databázím. Zadejte rozsah podsítí virtuální sítě použité pro službu 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 REPLICATION na serveru, který je hostitelem zdrojové databáze.

Důležité

Všechny tabulky ve stávající databázi potřebují primární klíč, aby se zajistilo, že se změny dají synchronizovat 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 například chcete vytvořit soubor výpisu 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í serveru Azure Database for PostgreSQL na webu 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 migrace interně zpracovává povolení/zákaz cizích klíčů a triggerů, aby zajistila spolehlivou a robustní migraci 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 portálu Azure. Vyhledejte a vyberte Předplatná.

    Snímek obrazovky s předplatnými portálu

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

    Snímek obrazovky s možností Zobrazit poskytovatele prostředků

  3. Vyhledejte migraci a pak vyberte Zaregistrovat pro Microsoft.DataMigration.

    Snímek obrazovky s registrací poskytovatele prostředků

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

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

    Snímek obrazovky s Azure Marketplace

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

    Snímek obrazovky s vytvořením instance služby Azure Database Migration Service

    Vyberte odpovídající typ zdrojového serveru a typ cílového serveru a zvolte možnost Database Migration Service (Classic).

    Snímek obrazovky se scénářem Vybrat službu Database Migration Service (Classic)

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

    • Vyberte předplatné.
    • Vytvořte novou skupinu prostředků nebo zvolte existující.
    • Zadejte název instance služby Azure Database Migration Service.
    • Vyberte umístění, ve kterém chcete vytvořit instanci služby 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.

    Snímek obrazovky se základními nastaveními konfigurace instance služby Azure Database Migration Service

    • Vyberte Další: Sítě.
  4. Na obrazovce Vytvořit síťovou službu Migration Service:

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

    Snímek obrazovky konfigurace nastavení sítě instance služby Azure Database Migration Service

    • Výběrem možnosti Zkontrolovat a vytvořit zkontrolujte podrobnosti a pak výběrem možnosti Vytvořit 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 služby Search Azure Database Migration Service

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

    Snímek obrazovky s instancí služby Azure Database Migration Service

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

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

    Snímek obrazovky s projektem Vytvořit nový projekt migrace

    Případně můžete zvolit Možnost Vytvořit projekt pouze pro vytvoření projektu migrace a provedení migrace později.

  5. Vyberte Možnost Vytvořit a spustit aktivitu, abyste mohli úspěšně migrovat data pomocí služby Azure Database Migration Service.

Zadání podrobností o zdroji

  1. Na obrazovce Přidat podrobnosti o zdroji zadejte podrobnosti o připojení pro zdroj 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ý server 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 s podrobnostmi o přidání cíle

  2. Vyberte Další:Vyberte 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, služba 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. Vyberte Další:Vyberte tabulky a potom na obrazovce Vybrat tabulky vyberte požadované tabulky, které je potřeba migrovat.

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

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

    Snímek obrazovky s konfigurací nastavení migrace

  5. Na obrazovce Souhrn migrace v textovém poli Název aktivity zadejte název aktivity migrace a zkontrolujte souhrn, abyste měli jistotu, že podrobnosti o zdroji a cíli odpovídají tomu, co jste zadali dříve.

    Snímek obrazovky se souhrnem migrace

Spuštění migrace

Vyberte Zahájit migraci.

Zobrazí se okno aktivity migrace a stav aktivity by se měl aktualizovat tak, aby se zobrazoval jako 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 v části Název databáze vyberte konkrétní databázi, abyste získali stav migrace pro úplné načtení dat a operace přírůstkové synchronizace dat.

    Poznámka:

    Úplné načtení dat zobrazuje stav počáteční migrace zatížení, zatímco přírůstková synchronizace dat zobrazuje stav zachytávání dat změn (CDC).

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

    Snímek obrazovky s podrobnostmi o přírůstkové migraci

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 na zobrazení 0 čítače čekajících změn, abyste zajistili, že jsou všechny příchozí transakce ve zdrojové databázi zastaveny, zaškrtněte políčko Potvrdit a pak vyberte Použít.

    Snímek obrazovky s přímou dokončením

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