Sdílet prostřednictvím


Kurz: Online migrace RDS PostgreSQL do služby Azure Database for PostgreSQL pomocí DMS

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.

Službu Azure Database Migration Service můžete použít k migraci databází z instance RDS PostgreSQL do Služby Azure Database for PostgreSQL , zatímco zdrojová databáze zůstává během migrace online. Jinými slovy, migraci je možné dosáhnout s minimálními výpadky aplikace. V tomto kurzu provedete migraci DVD Rental ukázkové databáze z instance RDS PostgreSQL 9.6 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 pomocí služby 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. Další informace najdete na stránce s cenami služby Azure Database Migration Service. Disk zašifrujeme, abychom zabránili krádeži dat během procesu migrace.

Důležité

Aby migrace proběhla optimálním způsobem, doporučuje Microsoft vytvořit instanci služby Azure Database Migration Service ve stejné oblasti Azure, ve které je cílová databáze. Přenášení dat mezi oblastmi geografickými lokalitami může zpomalit proces migrace a způsobit chyby.

Tip

Ve službě Azure Database Migration Service můžete migrovat databáze offline nebo během online režimu. V offline migraci se výpadek aplikace spustí při spuštění migrace. Pokud chcete omezit prostoje na dobu potřebnou k přerušení provozu do nového prostředí po migraci, použijte online migraci. Doporučujeme otestovat offline migraci, abyste zjistili, jestli je výpadek přijatelný. Pokud očekávaný výpadek není přijatelný, proveďte online migraci.

Tento článek popisuje, jak provést online migraci z místní instance PostgreSQL do Azure Database for PostgreSQL.

Požadavky

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

  • Stáhněte a nainstalujte komunitní edici PostgreSQL 9.5, 9.6 nebo 10. Zdrojová verze Serveru PostgreSQL musí být 9.5.11, 9.6.7, 10 nebo novější. Další informace najdete v článku Podporované verze databáze PostgreSQL.

    Cílová verze Azure Database for PostgreSQL musí být stejná nebo novější než verze RDS PostgreSQL. Například RDS PostgreSQL 9.6 se dá migrovat jenom na Azure Database for PostgreSQL 9.6, 10 nebo 11, ale ne na Azure Database for PostgreSQL 9.5.

  • Vytvořte instanci flexibilního 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.

  • Ujistěte se, že pravidla skupiny zabezpečení sítě virtuální sítě 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, což je ve výchozím nastavení 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 pravidlo brány firewall na úrovni serveru pro server Azure Database for PostgreSQL, které povolí službě Azure Database Migration Service 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.

Nastavení AWS RDS PostgreSQL pro replikaci

  1. Pokud chcete vytvořit novou skupinu parametrů, postupujte podle pokynů poskytovaných AWS v článku Práce se skupinami parametrů databáze.

  2. Pomocí hlavního uživatelského jména se připojte ke zdroji ze služby Azure Database Migration Service. Pokud používáte jiný účet než hlavní uživatelský účet, musí mít účet roli rds_superuser a roli rds_replication. Role rds_replication uděluje oprávnění ke správě logických slotů a streamování dat pomocí logických slotů.

  3. Vytvořte novou skupinu parametrů s následující konfigurací:

    • rds.logical_replication Nastavte parametr ve skupině parametrů databáze na 1hodnotu .

    • max_wal_senders = [počet souběžných úkolů]. Parametr max_wal_senders nastaví počet souběžných úloh, které lze spustit. Doporučené nastavení: 10.

    • max_replication_slots = [počet slotů]. Doporučené nastavení: 5.

  4. Přidružte skupinu parametrů, kterou jste vytvořili, k instanci RDS PostgreSQL.

Migrace schématu

  1. Extrahujte schéma ze zdrojové databáze a použijte pro cílovou databázi k dokončení migrace všech databázových objektů, jako jsou schémata tabulek, indexy a uložené procedury.

    Nejjednodušší způsob, jak migrovat pouze schéma, je použít pg_dump s možností -s. Další informace najdete v příkladech v kurzu pg_dump Postgres.

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

    Pokud chcete například vysunout soubor schématu pro databázi dvdrental , použijte následující příkaz:

    pg_dump -O -h localhost -U postgres -d dvdrental -s  > dvdrentalSchema.sql
    
  2. Vytvořte prázdnou databázi v cílové službě, což je flexibilní server Azure Database for PostgreSQL.

  3. Naimportujte schéma do cílové služby, což je Azure Database for PostgreSQL. Pokud chcete obnovit soubor výpisu schématu, spusťte následující příkaz:

    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 dvdrental < dvdrentalSchema.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. Na webu Azure Portal vyberte + Vytvořit prostředek, vyhledejte službu Azure Database Migration Service a pak v rozevíracím seznamu 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

  3. Na obrazovce Vytvořit službu Migration Service zadejte název služby, předplatné a novou nebo existující skupinu prostředků.

  4. Vyberte umístění, ve kterém chcete vytvořit instanci služby Azure Database Migration Service.

  5. Vyberte existující virtuální síť nebo vytvořte novou.

    Virtuální síť poskytuje službě Azure Database Migration Service přístup ke zdrojové instanci PostgreSQL a cílové instanci Azure Database for PostgreSQL.

    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.

  6. Vyberte cenovou úroveň. Pro tuto online migraci vyberte cenovou úroveň Premium: 4vCores.

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

  7. Vyberte Vytvořit a vytvořte službu.

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 umístěním všech instancí služby 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.

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

  4. V části Zvolit typ aktivity vyberte Online migraci dat.

    Důležité

    Vyberte Online migraci dat. Pro tento scénář nejsou podporované offline migrace.

    Snímek obrazovky s projektem Vytvořit službu Database Migration Service

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

  5. Zvolte Uložit.

  6. Vyberte Vytvořit a spustit aktivitu a vytvořte projekt a spusťte aktivitu migrace.

    Poznamenejte si požadavky potřebné k nastavení online migrace v podokně vytváření projektu.

Zadání podrobností o zdroji

Na obrazovce Přidat podrobnosti o zdroji zadejte podrobnosti o připojení pro zdroj instanci PostgreSQL.

Snímek obrazovky s podrobnostmi o zdroji

Zadání podrobností o cíli

  1. Vyberte Uložit a potom na obrazovce Podrobnosti cíle zadejte podrobnosti o připojení pro cílový server Azure Database for PostgreSQL, který je předem zřízený a má nasazené schéma zapůjčení DVD pomocí pg_dump.

    Snímek obrazovky s podrobnostmi cíle

  2. Vyberte Uložit a pak na obrazovce Mapovat na cílové databáze namapujte zdrojovou 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 s mapou na cílové databáze

  3. Vyberte Uložit, na obrazovce Shrnutí migrace do textového pole Název aktivity zadejte název aktivity migrace a pak zkontrolujte souhrnné informace a ujistěte se, že podrobnosti zdroje a cíle odpovídají dříve zadaným informacím.

    Snímek obrazovky se souhrnem migrace

Spuštění migrace

Vyberte Spustit migraci.

Zobrazí se okno aktivity migrace a Stav aktivity bude Inicializace.

Monitorování migrace

  1. Na obrazovce aktivity migrace vyberte Aktualizovat a aktualizujte zobrazení, dokud se Stav migrace nezmění na Spuštěno.

    Snímek obrazovky se stavem aktivity – spuštěno

  2. 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.

    Ú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 Inventář – načtení celých dat

    Snímek obrazovky Inventář – přírůstková synchronizace dat

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 kompletní přímou obrazovkou

  3. Jakmile se zobrazí stav migrace databáze Dokončeno, připojte své aplikace k nové cílové databázi Azure Database for PostgreSQL.

Vaše online migrace místní instance RDS PostgreSQL do Služby Azure Database for PostgreSQL je teď hotová.