Utforska alternativ för migreringsverktyg
Det finns flera verktyg som du kan använda för att planera och migrera data till en flexibel Azure Database for MySQL-server. Varje alternativ har sina fördelar och nackdelar, enligt beskrivningen i följande avsnitt.
Identifiera och utvärdera dina MySQL-arbetsbelastningar med Hjälp av Azure Migrate
Azure Migrate erbjuder en centraliserad hubb för att identifiera, utvärdera och migrera lokal infrastruktur, inklusive servrar, databaser och webbprogram som finns i fysiska miljöer, till PaaS-mål (Plattform som en tjänst) och Infrastruktur som en tjänst (IaaS) i stor skala. MySQL-identifierings- och utvärderingsfunktionerna i Azure Migrate (förhandsversion) hjälper dig under planeringsfasen genom att göra så att du kan:
- Identifiera MySQL-instanser och deras attribut i din miljö,
- Utvärdera beredskapen för migrering till Azure Database for MySQL – flexibel server och
- Få rekommendationer om lämplig beräknings- och lagrings-SKU för att vara värd för MySQL-arbetsbelastningar i Azure Database for MySQL – flexibel server, tillsammans med tillhörande kostnader.
Azure Database for MySQL Import CLI
Azure Database for MySQL Import är ett enda CLI-kommando som gör att du kan migrera din MySQL-arbetsbelastning lokalt eller virtuell dator (VM) sömlöst till Azure Database for MySQL – flexibel server. Den erbjuder en enkel och snabb migreringsväg. Kommandot etablerar din flexibla målserver som konfigurerats enligt användarindata och återställer sedan den fysiska säkerhetskopieringsfilen (som används med Percona XtraBackup) för källservern som lagras i Azure Blob Storage-kontot till målinstansen för flexibel server.
CLI-kommandot är: az mysql flexible-server --import
När du utvärderar import-CLI bör du ta hänsyn till följande överväganden.
Källserverkonfigurationen måste innehålla följande parametrar och värden:
lower_case_table_names = 1 innodb_file_per_table = ON
Namnet på systemtabellområdet ska vara
ibdata1
med en storlek som är lika med minst 12 MB (MySQL-standardvärdet).Endast InnoDB-motorn stöds för migrering.
Vissa element på källservern som konfiguration (brandväggar, användare, behörigheter) migreras inte.
Hög tillgänglighet (HA) inaktiveras under migreringen för att optimera prestanda. Se till att återaktivera HA när migreringen är klar.
Azure Database Migration Service
Azure Database Migration Service är en fullständigt hanterad tjänst som hjälper dig att förenkla, vägleda och automatisera dina databasmigreringar till Azure-dataplattformar.
Azure Database Migration Service fungerar genom att skapa och köra repeterbara migreringsprojekt. Källor sträcker sig från lokala arbetsbelastningar till molnbaserade arbetsbelastningar som Amazon RDS MySQL. Azure Database Migration Service är tekniskt sett ett offlinemigreringsverktyg, men använder MySQL binlog
för att utföra nästan noll driftstopp onlinemigreringar.
mysqldump
Klientverktyget mysqldump
, som vanligtvis installeras tillsammans med MySQL, är ett verktyg för databassäkerhetskopiering. Du kan använda mysqldump för att dumpa schemat och innehållet i en källdatabas i SQL-uttryck. Du kan sedan köra dessa instruktioner som de är för att återställa det fullständiga eller partiella innehållet till måldatabasen.
För stora datamängder kan det gå dåligt att återställa dumpen genom att köra SQL-uttrycken. Index uppdateras till exempel en instruktion i taget, vilket kan överbelasta diskens I/O-prestanda. På grund av detta kan du påskynda en migrering genom att mysqldump
para ihop med verktyg som mydumper
och myloader
, som är optimerade för massdatamigrering. Använd mysqldump
för att återskapa databasschemat, som är en landningszon i måldatabasen, för att hantera de data som importeras.
Ibland måste du anpassa migreringsdataöverföringen. Du kanske vill exportera en delmängd data för testning eller ersätta måldatabasens data för en kund. Du kan till och med ändra data, till exempel redigera personliga data för att felsöka ett problem i en testdatabas innan du migrerar dem.
I dessa scenarier mysqldump
ger den största flexibiliteten. Eftersom den exporterar en fil som innehåller SQL-instruktioner kan du välja hur du ändrar data innan du kör -instruktionerna på målservern.
mydumper och myloader
mydumper
och myloader
ingår i MyDumper-paketet , ett MySQL-säkerhetskopieringsverktyg med öppen källkod.
mysqldump
Till skillnad från verktyget, som matar ut hela schemat till SQL-instruktioner för att köras igen linjärt, drar MyDumper-verktygen nytta av parallellitet och ger fördelar som att använda separata filer per tabell och format som kan läsas av människor, samt upprätthålla korrekta positioner för binär käll- och målbinär logg.
För att migrera stora databaser mydumper
och myloader
rekommenderas eftersom dessa verktyg erbjuder 10 gånger eller högre prestanda med parallellitet.
Verktygen är tillgängliga som binära versioner för Linux som rpm- och deb-paket och för macOS via Homebrew. På andra plattformar måste du kompilera verktygen från källan, vilket ger komplexitet.
MySQL Workbench
MySQL Workbench tillhandahåller ett grafiskt användargränssnitt (GUI) för att arbeta med MySQL, och det ger åtkomst till många verktyg, inklusive ett för databasmigrering. MySQL Workbench finns i community- och kommersiella utgåvorna av MySQL, enligt beskrivningen i listan MySQL Workbench Features .
MySQL-binlog
Verktyget mysqlbinlog
använder binärloggen MySQL, som registrerar händelser för databasändring, till exempel tabelländringar eller datainfogningar, uppdateringar och borttagningar. Varje ändring identifieras med en inkrementellt ökande position och du kan inspektera och ändra varje ändring med hjälp mysqlbinlog
av verktyget.
Du kan använda binär logg som en del av både online- och offlinemigreringar:
- Med onlinemigreringar är den binära loggen den viktigaste mekanismen för replikering av livedataändringar från källan till målet.
- Med offlinemigreringar möjliggör binärloggen inkrementella migreringar genom att exakt generera ändringar sedan en tidigare migrerad ögonblicksbild.
Underhåll av binär logg kräver ytterligare bearbetnings- och lagringsresurser.