Kurz: Offline migrace MySQL do služby Azure Database for MySQL pomocí DMS
Pomocí služby Azure Database Migration Service můžete provést bezproblémovou migraci z externí instance MySQL do služby Azure Database for MySQL s možností migrace vysokorychlostních dat. V tomto kurzu provedeme migraci ukázkové databáze z místní instance MySQL 5.7 do Služby Azure Database for MySQL (verze 5.7) pomocí aktivity offline migrace ve službě Azure Database Migration Service. I když články předpokládají, že zdrojem je instance databáze MySQL a cílem být Azure Database for MySQL, dá se použít k migraci z jedné služby Azure Database for MySQL na jinou, a to změnou názvu a přihlašovacích údajů zdrojového serveru. Podporuje se také migrace ze serverů MySQL nižší verze (verze 5.6 a vyšší) na vyšší verze.
Poznámka:
Informace o skriptovatelné verzi tohoto prostředí migrace založené na PowerShellu najdete v tématu skriptovatelná offline migrace do služby Azure Database for MySQL.
Jako zdroje pro migraci se podporují také Amazon Relational Database Service (RDS) pro MySQL a Amazon Aurora (založené na MySQL).
V tomto kurzu se naučíte:
- Vytvořte instanci DMS.
- Vytvořte projekt migrace MySQL v DMS.
- Migrace schématu MySQL pomocí DMS
- Spuštění migrace
- Monitorujte migraci.
Požadavky
Pro absolvování tohoto kurzu je potřeba provést následující:
Mít účet Azure s aktivním předplatným. Vytvoření účtu zdarma
Máte místní databázi MySQL s verzí 5.7. Pokud ne, stáhněte a nainstalujte si komunitní edici MySQL 5.7.
Vytvořte službu Microsoft Azure Virtual Network for Azure Database Migration Service pomocí modelu nasazení Azure Resource Manager, který poskytuje připojení typu site-to-site k místním zdrojovým serverům pomocí ExpressRoute nebo 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ě 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ě.
Otevřete bránu Windows Firewall a povolte připojení ze služby Azure Database Migration Service pro přístup ke zdrojovému serveru MySQL, což je ve výchozím nastavení port TCP 3306.
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á povolí připojení ze služby Azure Database Migration Service pro přístup ke zdrojovým databázím pro migraci.
Vytvořte pravidlo brány firewall na úrovni serveru nebo nakonfigurujte koncové body služby virtuální sítě pro cílovou službu Azure Database for MySQL, aby virtuální síť pro službu Azure Database Migration Service umožňovala přístup k cílovým databázím.
Zdrojová instance MySQL musí být na podporované edici MySQL Community Edition. Pokud chcete určit verzi instance MySQL, v nástroji MySQL nebo aplikaci MySQL Workbench spusťte následující příkaz:
SELECT @@VERSION;
Azure Database for MySQL podporuje pouze tabulky InnoDB. Informace o převodu tabulek MyISAM na tabulky InnoDB najdete v článku Převod tabulek z MyISAM na InnoDB.
Uživatel musí mít oprávnění ke čtení dat ve zdrojové databázi.
K úspěšnému dokončení migrace schématu musí mít uživatel provádějící migraci na zdrojovém serveru následující oprávnění:
- Oprávnění SELECT na úrovni serveru ve zdroji
- Při migraci zobrazení musí mít uživatel na zdrojovém serveru oprávnění SHOW VIEW a oprávnění CREATE VIEW na cílovém serveru.
- Pokud migrujete triggery, musí mít uživatel na zdrojovém a cílovém serveru oprávnění TRIGGER .
- Pokud migrujete rutiny (procedury nebo funkce), musí mít uživatel udělená oprávnění CREATE ROUTINE a ALTER ROUTINE na úrovni serveru v cíli.
- Při migraci událostí musí mít uživatel na zdrojovém a cílovém serveru oprávnění EVENT .
- Pokud migrujete uživatele nebo přihlášení, musí mít uživatel na cílovém serveru oprávnění CREATE USER .
- Oprávnění DROP na úrovni serveru v cíli za účelem vyřazení tabulek, které již mohou existovat. Například při opakování migrace.
- Oprávnění "REFERENCES" na úrovni serveru v cíli, aby bylo možné vytvářet tabulky s cizími klíči.
- Při migraci na MySQL 8.0 musí mít uživatel na cílovém serveru oprávnění SESSION_VARIABLES_ADMIN .
- Oprávnění CREATE na úrovni serveru v cíli
- Oprávnění INSERT na úrovni serveru v cíli
- Oprávnění AKTUALIZOVAT na úrovni serveru v cíli.
- Oprávnění DELETE na úrovni serveru v cíli.
Velikost cílové instance Azure Database for MySQL
Pokud chcete připravit cílový server Azure Database for MySQL na rychlejší načítání dat pomocí služby Azure Database Migration Service, doporučujeme následující parametry serveru a změny konfigurace.
max_allowed_packet – nastavte 1073741824 (tj. 1 GB), aby se zabránilo problémům s připojením kvůli velkým řádkům.
slow_query_log – pokud chcete vypnout protokol pomalých dotazů, nastavte na vypnuto. Tím se eliminují režijní náklady vyvolané pomalým protokolováním dotazů během načítání dat.
query_store_capture_mode – pokud chcete vypnout úložiště dotazů, nastavte hodnotu NONE. Tím se eliminují režijní náklady vyvolané aktivitami vzorkování v úložišti dotazů.
innodb_buffer_pool_size – Innodb_buffer_pool_size je možné zvýšit pouze vertikálním navýšením kapacity výpočetních prostředků pro server Azure Database for MySQL. Vertikálně navyšte kapacitu serveru na skladovou položku Pro obecné účely na 64 virtuálních jader z cenové úrovně portálu během migrace, abyste zvýšili innodb_buffer_pool_size.
innodb_io_capacity a innodb_io_capacity_max – Změňte na 9000 z parametrů serveru na webu Azure Portal, abyste zlepšili využití vstupně-výstupních operací pro optimalizaci rychlosti migrace.
innodb_write_io_threads a innodb_write_io_threads – Změňte na 4 z parametrů serveru na webu Azure Portal, aby se zlepšila rychlost migrace.
Navýšení kapacity vrstvy úložiště – Vstupně-výstupní operace pro server Azure Database for MySQL se postupně zvyšuje s rostoucí vrstvou úložiště.
- V možnosti nasazení s jedním serverem pro rychlejší načítání doporučujeme zvýšit vrstvu úložiště, aby se zvýšil počet ustanovených vstupně-výstupních operací za sekundu.
- V možnosti nasazení flexibilního serveru doporučujeme škálovat (zvětšit nebo zmenšit) IOPS bez ohledu na velikost úložiště.
- Velikost úložiště je možné vertikálně navýšit, nikoli snížit.
Vyberte velikost výpočetních prostředků a úroveň výpočetních prostředků pro cílový flexibilní server na základě cenové úrovně zdrojového jednoúčelového serveru a virtuálních jader na základě podrobností v následující tabulce.
Cenová úroveň jednoúčelového serveru Virtuální jádra jednoúčelového serveru Velikost výpočetních prostředků flexibilního serveru Úroveň výpočetních prostředků flexibilního serveru Základní 1 1 Pro obecné účely Standard_D16ds_v4 Základní 1 2 Pro obecné účely Standard_D16ds_v4 Obecné účely 1 4 Pro obecné účely Standard_D16ds_v4 Obecné účely 1 8 Pro obecné účely Standard_D16ds_v4 Pro obecné účely 16 Pro obecné účely Standard_D16ds_v4 Pro obecné účely 32 Pro obecné účely Standard_D32ds_v4 Pro obecné účely 64 Pro obecné účely Standard_D64ds_v4 Optimalizováno pro paměť 4 Pro důležité obchodní informace Standard_E4ds_v4 Optimalizováno pro paměť 8 Pro důležité obchodní informace Standard_E8ds_v4 Optimalizováno pro paměť 16 Pro důležité obchodní informace Standard_E16ds_v4 Optimalizováno pro paměť 32 Pro důležité obchodní informace Standard_E32ds_v4 1 Pro migraci vyberte pro cílový flexibilní server výpočetní prostředky pro obecné účely 16 virtuálních jader pro rychlejší migraci. Po dokončení migrace cílový server škálujte zpět na požadovanou velikost výpočetních prostředků podle doporučení k velikosti výpočetních prostředků v části Provádění aktivit po migraci dále v tomto článku.
Po dokončení migrace můžete vrátit parametry serveru a konfiguraci k hodnotám požadovaným vaší úlohou.
Nastavení DMS
S nasazeným a nakonfigurovaným cílovým flexibilním serverem je potřeba nastavit DMS pro migraci jednoho serveru na flexibilní server.
Registrace poskytovatele prostředků
Pokud chcete zaregistrovat poskytovatele prostředků Microsoft.DataMigration, proveďte následující kroky.
Před vytvořením první instance DMS se přihlaste k webu Azure Portal a vyhledejte a vyberte Předplatná.
Vyberte předplatné, které chcete použít k vytvoření instance DMS, a pak vyberte Poskytovatele prostředků.
Vyhledejte termín "Migrace" a pak v části Microsoft.DataMigration vyberte Zaregistrovat.
Vytvoření instance služby Database Migration Service
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 .
Na obrazovce Azure Database Migration Service vyberte Vytvořit.
Na obrazovce Vytvořit službu Migration Service zadejte název služby, předplatné a novou nebo existující skupinu prostředků.
Vyberte cenovou úroveň a přejděte na obrazovku sítě. Funkce offline migrace je dostupná jenom na cenové úrovni Premium.
Další informace o nákladech a cenových úrovních najdete na stránce s cenami.
Ze seznamu vyberte existující virtuální síť nebo zadejte název nové virtuální sítě, kterou chcete vytvořit. Přejděte na obrazovku revize a vytvoření. Volitelně můžete do služby přidat značky pomocí obrazovky značek.
Virtuální síť poskytuje službě Azure Database Migration Service přístup ke zdrojovému SQL Serveru a cílové instanci služby Azure SQL Database.
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.
Zkontrolujte konfigurace a výběrem možnosti Vytvořit 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.
Na webu Azure Portal vyberte Všechny služby, vyhledejte „Azure Database Migration Service“ a pak vyberte Služby Azure Database Migration Service.
Ve výsledcích hledání vyberte instanci služby migrace a vyberte + Nový projekt migrace.
Na obrazovce Nový projekt migrace zadejte název projektu, v poli Pro výběr typu zdrojového serveru vyberte MySQL v poli Výběr typu cílového serveru, vyberte Azure Database for MySQL a v poli Pro výběr typu aktivity migrace vyberte Migraci dat. Vyberte Vytvořit a spustit aktivitu.
Případně můžete zvolit Možnost Vytvořit projekt pouze pro vytvoření projektu migrace a provedení migrace později.
Konfigurace projektu migrace
Na obrazovce Vybrat zdroj zadejte podrobnosti o připojení ke zdrojové instanci MySQL a vyberte Další: Vyberte cíl.>>
Na obrazovce Vybrat cíl zadejte podrobnosti o připojení pro cílovou instanci Azure Database for MySQL a vyberte Další: Vybrat databáze.>>
Na obrazovce Vybrat databáze namapujte zdrojovou a cílovou databázi pro migraci a vyberte Další: Konfigurovat nastavení>> migrace. Pokud chcete zdroj nastavit jako jen pro čtení, můžete vybrat možnost Nastavit zdrojový server jen pro čtení, ale buďte opatrní, že se jedná o nastavení na úrovni serveru. Pokud je tato možnost vybraná, nastaví celý server jen pro čtení, ne jenom vybrané databáze.
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.
Na obrazovce Konfigurovat nastavení migrace vyberte tabulky, které mají být součástí migrace, a vyberte Další: Souhrn>>. Pokud cílové tabulky obsahují nějaká data, nejsou ve výchozím nastavení vybrané, ale můžete je explicitně vybrat a před zahájením migrace se zkrátí.
Na obrazovce Souhrn 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í dříve zadaným údajům.
Vyberte Zahájit migraci. Zobrazí se okno aktivity migrace a Stav aktivity bude Inicializace. Stav se změní na Spuštěno, když se spustí migrace tabulek.
Monitorování migrace
Na obrazovce aktivity migrace vyberte Aktualizovat , abyste aktualizovali zobrazení a viděli průběh o počtu dokončených tabulek.
Na obrazovce aktivity můžete vybrat název databáze, abyste viděli stav každé tabulky při migraci. Výběrem možnosti Aktualizovat aktualizujte zobrazení.
Dokončení migrace
Na obrazovce aktivity migrace vyberte Aktualizovat a aktualizujte zobrazení, dokud se Stav migrace nezmění na Dokončeno.
Aktivity po migraci
Přímá migrace v offline migraci je proces závislý na aplikaci, který je pro tento dokument mimo rozsah, ale jsou předepsány následující aktivity po migraci:
- Vytvořte přihlášení, role a oprávnění podle požadavků aplikace.
- Znovu vytvořte všechny triggery v cílové databázi, jak se extrahuje během kroku před migrací.
- Provést základní testování aplikace s cílovou databází za účelem ověření úspěšnosti migrace
Vyčištění prostředků
Pokud službu Database Migration Service nebudete dál používat, můžete ji odstranit pomocí následujícího postupu:
Na webu Azure Portal vyberte Všechny služby, vyhledejte „Azure Database Migration Service“ a pak vyberte Služby Azure Database Migration Service.
Ve výsledcích hledání vyberte instanci služby migrace a vyberte Odstranit službu.
V potvrzovací dialogovém okně zadejte název služby do textového pole ZADEJTE NÁZEV SLUŽBY DATABASE MIGRATION SERVICE a vyberte Odstranit.
Související obsah
- Řešení běžných potíží a chyb služby Azure Database Migration Service (Classic)
- Řešení chyb DMS při připojování ke zdrojovým databázím
- Co je Azure Database Migration Service?
- Co je Azure Database for MySQL?
- Offline migrace MySQL do služby Azure Database for MySQL pomocí PowerShellu a služby Azure Database Migration Service