Migrace místní databáze MySQL do Azure
Jakmile se společnost rozhodne přejít na Azure Database for MySQL, dalším krokem je naplánovat migraci místních databází a zvolit nástroje pro přesun dat.
Když jste se seznámili s tím, jak Azure Database for MySQL podporuje a škáluje MySQL v Azure, teď chcete zvážit, jak budete migrovat stávající místní databáze.
V této lekci se dozvíte, jak vytvořit instanci služby Azure Database for MySQL pomocí webu Azure Portal. Pokud potřebujete vytvořit mnoho instancí této služby, můžete proces skriptovat pomocí Azure CLI.
Vytvoření služby Azure Database for MySQL pomocí portálu
Na webu Azure Portal vyberte příkaz Databáze na Azure Marketplace a vyberte Azure Database for MySQL.
Zadejte podrobnosti o službě. Tady jsou některé z nich:
- Název serveru: Musí to být jedinečný název mezi 3 a 63 znaky, který obsahuje jenom malá písmena, číslice a pomlčky.
- Zdroj dat. Pokud vytváříte nový server pro účely migrace, vyberte Žádné. Možnost Zálohování umožňuje obnovit zálohu pořízenou z jiné instance Služby Azure Database for MySQL do této služby.
- Uživatelské jméno správce: Toto je název uživatelského účtu, který se vytvoří s oprávněními správce. Azure vytváří některé účty pro vlastní použití a jiné názvy jsou omezené; nemůžete používat azure_superuser, správce, správce, root, host nebo veřejný.
- Heslo. Musí to být 8 až 128 znaků. Měla by obsahovat kombinaci velkých a malých písmen, číslic a neosamocených znaků. Azure Database for MySQL v současné době podporuje pouze ověřování heslem; integrace s ID Microsoft Entra ještě není k dispozici.
- Verze. Vyberte verzi, která odpovídá místní databázi, kterou migrujete.
- Výpočty + úložiště: Vyberte Konfigurovat server , aby nastavil cenovou úroveň, a zadejte prostředky, které pro službu požadujete. Možnosti byly popsány v lekci 1. Mějte na paměti, že pokud vyberete cenové úrovně Pro obecné účely nebo Optimalizováno pro paměť, vertikálně navyšte a snižujete počet jader virtuálních procesorů později. Nemůžete ale snížit množství úložiště; může se zvýšit až po vytvoření serveru.
Výběrem možnosti Zkontrolovat a vytvořit službu nasadíte. Nasazení bude trvat několik minut.
Po nasazení služby vyberte možnost Zabezpečení připojení a přidejte příslušná pravidla brány firewall, která umožní klientům připojit se, jak je popsáno v tématu Připojení klienta v lekci 1. Musíte také vybrat možnost Povolit přístup ke službám Azure.
Vytvoření instance Azure Database for MySQL pomocí Azure CLI
Pomocí příkazu az mysql server create
vytvoříte instanci Azure Database for MySQL. Následující příkaz ukazuje příklad, který vytvoří instanci MySQL. Většina parametrů je sama vysvětlující, s výjimkou následujících:
- název skladové položky. Vytvoříte to z kombinace cenové úrovně (B pro Basic, GP pro obecné účely a MO pro optimalizováno pro paměť), generování výpočetních prostředků (Gen4 nebo Gen5) a počtu virtuálních jader procesoru. V následujícím příkladu se server vytvoří pomocí cenové úrovně Pro obecné účely se čtyřmi jádry procesoru generace Gen5.
- velikost úložiště. Toto je množství požadovaného diskového úložiště zadaného v megabajtech. Následující příklad přiděluje 10 gigabajtů.
az mysql server create \
--name contoso-MySQL-server \
--resource-group MySQLrg \
--admin-user contosoadmin \
--admin-password 7Hh7*ku5k$$£jhk \
--sku-name GP_Gen5_4 \
--storage-size 10240
Provedení offline migrace
Offline migrace pořídí snímek zdrojové databáze v určitém časovém okamžiku a zkopíruje tato data do cílové databáze. Všechny změny provedené ve zdrojových datech po pořízení snímku se v cílové databázi neprojeví.
Pokud chcete provést offline migraci do služby Azure Database for MySQL, máte aspoň dvě možnosti:
Export a import
Databázi z MySQL můžete exportovat a importovat ji do Azure Database for MySQL pomocí nástrojů, jako je MySQL Workbench. To je užitečné v řadě scénářů:
- Chcete vybrat, které tabulky chcete importovat.
- Chcete vybrat, které databázové objekty se mají exportovat a importovat, včetně zobrazení, uložených procedur, omezení a funkcí.
- Chcete také migrovat data z jiných zdrojů. Například potřebujete přidat data z textových souborů a pomocí nástroje mysqlimport je přidat jako tabulky do databáze.
Export a import můžete provést pomocí aplikace MySQL Workbench. V nabídce Server vyberte Export dat nebo Import dat.
Poznámka:
Můžete také použít mysqldump k exportu konkrétních tabulek výpisem jejich názvů za názvem databáze.
Další informace najdete v tématu Migrace databáze MySQL pomocí importu a exportu.
Výpis a obnovení
Pokud chcete efektivně přesunout celou databázi, použijte výpis a obnovení.
Při použití výpisu a obnovení je potřeba vzít v úvahu celou řadu aspektů:
- Zabránění aktivaci triggerů během obnovení pomocí možnosti exclude-triggers .
- Vypište celou databázi do jedné transakce s možností single-transaction .
- Zakažte omezení cizího klíče, která se v průběhu procesu spouští, pomocí možnosti disable-keys .
- Odložit vytvoření indexu až po dokončení obnovení s možností pozdržet indexy tabulky.
Další informace o mysqldump naleznete v tématu mysqldump – A Database Backup Program.
Poznámka:
K exportu konkrétních tabulek také použijete mysqldump tak, že za názvem databáze zobrazíte jejich názvy.
Azure Database Migration Service (DMS)
Kromě offline migrací do služby Azure Database for MySQL podporuje DMS migrace mezi oblastmi, mezi skupinami prostředků a migracemi mezi předplatnými, takže můžete vybrat oblast, skupinu prostředků a předplatné pro cílový server, který se liší od toho, co je určené pro váš zdrojový server.
Migrace pomocí výpisu a obnovení
Pokud chcete migrovat databázi pomocí výpisu a obnovení, proveďte následující kroky.
Exportujte data do jiného souboru pomocí příkazu mysqldump:
mysqldump -h [host name] -u [username] -p[password] [database name] > db_data.sql
V tuto chvíli db_data.sql je skript SQL, který upravíte pomocí textového editoru.
Vytvořte cílovou databázi ve službě Azure Database for MySQL. Provedete to pomocí Azure CLI:
az mysql db create \ --name [database name] \ --server-name [server name] \ --resource-group [azure resource group]
Importujte data do cílové databáze pomocí příkazu mysql:
mysql -h [host name] -u [username] -p[password] [database name] < db_data.sql
Provedení online migrace
DMS také podporuje online migraci do služby Azure Database for MySQL. Pro online migraci doporučujeme vybrat výpočetní prostředky pro obecné účely 16 virtuálních jader pro cílový flexibilní server pro rychlejší migrace. Po dokončení migrace proveďte škálování zpět na požadovanou velikost výpočetních prostředků cílového serveru 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 |
---|---|---|---|
Basic | 1 | Se zvládáním nárazových špiček | Standard_B1s |
Basic | 2 | Se zvládáním nárazových špiček | Standard_B2s |
Pro obecné účely | 4 | Pro obecné účely | Standard_D4ds_v4 |
Pro obecné účely | 8 | Pro obecné účely | Standard_D8ds_v4 |
Další informace o online migraci do služby Azure Database for MySQL najdete v kurzu Migrace jednoúčelového serveru Azure Database for MySQL na flexibilní server online pomocí DMS prostřednictvím webu Azure Portal.