Opties voor migratiehulpprogramma's verkennen
Er zijn verschillende hulpprogramma's die u kunt gebruiken om gegevens te plannen en te migreren naar een flexibele Azure Database for MySQL-server. Elke optie heeft de voor- en nadelen, zoals wordt uitgelegd in de volgende secties.
Uw MySQL-workloads detecteren en evalueren met behulp van Azure Migrate
Azure Migrate biedt een gecentraliseerde hub voor het detecteren, beoordelen en migreren van on-premises infrastructuur, waaronder servers, databases en webtoepassingen die worden gehost in fysieke omgevingen, naar PaaS-doelen (Platform-as-a-Service) en IaaS-doelen (Infrastructure-as-a-Service) op schaal. De detectie- en evaluatiefunctionaliteit van MySQL in Azure Migrate (preview) helpt u tijdens de planningsfase door u in staat te stellen het volgende te doen:
- MySQL-exemplaren en hun kenmerken ontdekken in uw omgeving,
- De gereedheid voor migratie naar Azure Database for MySQL – Flexibele server en
- Ontvang aanbevelingen voor de juiste reken- en opslag-SKU voor het hosten van MySQL-workloads in Azure Database for MySQL – Flexible Server, samen met de bijbehorende kosten.
Azure Database for MySQL Import CLI
Azure Database for MySQL Import is één CLI-opdracht waarmee u uw on-premises MySQL- of VM-workload naadloos kunt migreren naar Azure Database for MySQL - Flexible Server. Het biedt een eenvoudig en snel migratiepad. Met de opdracht wordt uw flexibele doelserver ingericht die is geconfigureerd op basis van gebruikersinvoer en wordt vervolgens het fysieke back-upbestand (gemaakt met behulp van Percona XtraBackup) van de bronserver die is opgeslagen in het Azure Blob Storage-account, hersteld naar het doelexemplaren van flexibele server.
De CLI-opdracht is: az mysql flexible-server --import
Houd bij het evalueren van de import-CLI rekening met de volgende overwegingen.
De configuratie van de bronserver moet deze parameters en waarden bevatten:
lower_case_table_names = 1 innodb_file_per_table = ON
De naam van de systeemtabelruimte moet een grootte hebben die gelijk is
ibdata1
aan ten minste 12 MB (de mySQL-standaardinstelling).Alleen de InnoDB-engine wordt ondersteund voor migratie.
Bepaalde elementen op de bronserver, zoals configuratie (firewalls, gebruikers, bevoegdheden), worden niet gemigreerd.
Hoge beschikbaarheid (HA) is uitgeschakeld tijdens de migratie om de prestaties te optimaliseren. Zorg ervoor dat u de hoge beschikbaarheid opnieuw kunt inschakelen nadat de migratie is voltooid.
Azure Database Migration-service
Azure Database Migration Service is een volledig beheerde service waarmee u uw databasemigraties naar Azure-gegevensplatforms kunt vereenvoudigen, begeleiden en automatiseren.
Azure Database Migration Service werkt door herhaalbare migratieprojecten te maken en uit te voeren. Bronnen variëren van on-premises workloads tot cloudworkloads, zoals Amazon RDS MySQL. Hoewel Azure Database Migration Service technisch gezien een offlinemigratieprogramma is, maakt azure Database Migration Service gebruik van MySQL binlog
om onlinemigraties bijna nul uit te voeren.
mysqldump
Het mysqldump
clienthulpprogramma, dat doorgaans samen met MySQL is geïnstalleerd, is een hulpprogramma voor databaseback-up. U kunt mysqldump gebruiken om het schema en de inhoud van een brondatabase in SQL-instructies te dumpen. Vervolgens kunt u deze instructies als volgt uitvoeren om de volledige of gedeeltelijke inhoud te herstellen naar de doeldatabase.
Voor grote gegevenssets kan het herstellen van de dump door het uitvoeren van de SQL-instructies slecht presteren. Indexen worden bijvoorbeeld één instructie tegelijk bijgewerkt, waardoor de I/O-prestaties van de schijf overbelast kunnen raken. Hierdoor kunt u een migratie versnellen door deze mysqldump
te koppelen aan hulpprogramma's zoals mydumper
en myloader
, die zijn geoptimaliseerd voor bulkgegevensmigratie. Gebruik mysqldump
dit om het databaseschema, een landingszone in de doeldatabase, opnieuw te maken om ruimte te bieden voor de gegevens die worden geïmporteerd.
Soms moet u de migratiegegevensoverdracht aanpassen. Mogelijk wilt u een subset met gegevens exporteren voor het testen of vervangen van de gegevens van de doeldatabase voor een klant. U kunt zelfs de gegevens wijzigen, zoals het redacteren van persoonlijke gegevens om een probleem in een testdatabase op te sporen voordat u deze migreert.
In deze scenario's mysqldump
biedt u de meeste flexibiliteit. Omdat er een bestand met SQL-instructies wordt geëxporteerd, kunt u kiezen hoe u de gegevens kunt wijzigen voordat u de instructies uitvoert op de doelserver.
mydumper en myloader
mydumper
en myloader
maken deel uit van het MyDumper-pakket , een opensource MySQL-back-upprogramma. In tegenstelling tot het mysqldump
hulpprogramma, dat het hele schema naar SQL-instructies uitvoert om opnieuw lineair uit te voeren, profiteren de MyDumper-hulpprogramma's van parallelle uitvoering en bieden voordelen, zoals het gebruik van afzonderlijke bestanden per tabel en door mensen leesbare indelingen, evenals het onderhouden van nauwkeurige bron- en doel binaire logboekposities.
Als u grote databases mydumper
wilt migreren en myloader
wordt aanbevolen omdat deze hulpprogramma's 10 keer of meer prestaties bieden met behulp van parallelle uitvoering.
De hulpprogramma's zijn beschikbaar als binaire releases voor Linux als rpm- en deb-pakketten en voor macOS via Homebrew. Op andere platforms moet u de hulpprogramma's compileren van de bron, wat complexiteit introduceert.
MySQL Workbench
MySQL Workbench biedt een grafische gebruikersinterface (GUI) voor het werken met MySQL en biedt toegang tot veel hulpprogramma's, waaronder een voor databasemigratie. MySQL Workbench is beschikbaar in de community- en commerciële edities van MySQL, zoals wordt genoemd in de lijst met functies van MySQL Workbench.
Binlog van MySQL
Het mysqlbinlog
hulpprogramma maakt gebruik van het binaire MySQL-logboek, dat wijzigingen in de database registreert, zoals tabelwijzigingen of gegevensinvoegingen, updates en verwijderingen. Elke wijziging wordt geïdentificeerd met behulp van een incrementeel toenemende positie en u kunt elke wijziging inspecteren en bewerken met behulp van het mysqlbinlog
hulpprogramma.
U kunt binair logboek gebruiken als onderdeel van zowel online als offline migraties:
- Met onlinemigraties is het binaire logboek het belangrijkste mechanisme voor het repliceren van livegegevenswijzigingen van de bron naar het doel.
- Met offlinemigraties maakt het binaire logboek incrementele migraties mogelijk door wijzigingen nauwkeurig te genereren sinds een eerder gemigreerde momentopname.
Onderhoud van binair logboek vereist aanvullende verwerking en opslagbronnen.