Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
U kunt Azure Database Migration Service gebruiken om een naadloze migratie van uw externe MySQL-exemplaar naar Azure Database for MySQL uit te voeren met de mogelijkheid voor gegevensmigratie met hoge snelheid. In deze zelfstudie migreren we een voorbeelddatabase van een on-premises exemplaar van MySQL 5.7 naar Azure Database for MySQL (v5.7) met behulp van een offlinemigratieactiviteit in Azure Database Migration Service. Hoewel in de artikelen wordt ervan uitgegaan dat de bron een MySQL-database-exemplaar en -doel moet zijn van Azure Database for MySQL, kan deze worden gebruikt om te migreren van de ene Azure Database for MySQL naar een andere door de naam en referenties van de bronserver te wijzigen. Migratie van MySQL-servers met een lagere versie (v5.6 en hoger) naar hogere versies wordt ook ondersteund.
Notitie
Zie de scriptbare offlinemigratie naar Azure Database for MySQL voor een scriptversie van deze migratie-ervaring op basis van PowerShell.
Amazon Relational Database Service (RDS) voor MySQL en Amazon Aurora (op basis van MySQL) worden ook ondersteund als bronnen voor migratie.
In deze zelfstudie leert u het volgende:
- Maak een DMS-exemplaar.
- Maak een MySQL-migratieproject in DMS.
- Migreer een MySQL-schema met behulp van DMS.
- De migratie uitvoeren.
- Houd de migratie in de gaten.
Vereisten
Voor het voltooien van deze zelfstudie hebt u het volgende nodig:
U moet beschikken over een Azure-account met een actief abonnement. Maak gratis een account.
Een on-premises MySQL-database met versie 5.7 hebben. Als dat niet het is, downloadt en installeert u MySQL Community Edition 5.7.
Maak een virtueel Microsoft Azure-netwerk voor Azure Database Migration Service met behulp van het Azure Resource Manager-implementatiemodel, dat site-naar-site-connectiviteit biedt met uw on-premises bronservers met behulp van ExpressRoute of VPN. Zie de documentatie voor virtuele netwerken voor meer informatie over het maken van een virtueel netwerk, en met name de quickstart-artikelen met stapsgewijze informatie.
Als u ExpressRoute gebruikt met netwerkpeering aan Microsoft, voegt u tijdens de installatie van het virtuele netwerknet de volgende service-eindpunten toe aan het subnet waarin de service wordt ingericht:
- Eindpunt van de doeldatabase (bijvoorbeeld SQL-eindpunt, Azure Cosmos DB-eindpunt, enzovoort)
- Opslageindpunt
- Service Bus-eindpunt
Deze configuratie is noodzakelijk omdat Azure Database Migration Service geen internetverbinding biedt.
Zorg ervoor dat de regels voor uw virtuele netwerkbeveiligingsgroep de uitgaande poort 443 van ServiceTag voor ServiceBus, Storage en AzureMonitor niet blokkeren. Zie het artikel Netwerkverkeer filteren met netwerkbeveiligingsgroepen voor meer informatie over het filteren van NSG-verkeer in virtuele netwerken.
Open uw Windows-firewall om verbindingen van Virtual Network voor Azure Database Migration Service toegang te geven tot de bron-MySQL-server, die standaard TCP-poort 3306 is.
Wanneer u een firewallapparaat voor uw brondatabase(s) gebruikt, moet u mogelijk firewallregels toevoegen om verbindingen van Virtual Network for Azure Database Migration Service toegang te geven tot de brondatabase(s) voor migratie.
Maak een firewallregel op serverniveau of configureer VNET-service-eindpunten voor azure Database for MySQL om virtueel netwerk voor Azure Database Migration Service toegang te geven tot de doeldatabases.
De brondatabase van MySQL moet op een ondersteunde MySQL-communityversie zijn. Om de versie van het MySQL-exemplaar te bepalen, voert u in het MySQL-hulpprogramma of MySQL Workbench de volgende opdracht uit:
SELECT @@VERSION;
Azure Database for MySQL ondersteunt alleen InnoDB-tabellen. Als u MyISAM-tabellen wilt converteren naar InnoDB, raadpleegt u het artikel Tabellen converteren van MyISAM naar InnoDB
De gebruiker moet over de bevoegdheden beschikken om gegevens in de brondatabase te lezen.
Als u een schemamigratie wilt voltooien, heeft de gebruiker die de migratie uitvoert op de bronserver de volgende bevoegdheden nodig:
- Select-bevoegdheid op serverniveau op de bron.
- Als de gebruiker weergaven migreert, moet de gebruiker de bevoegdheid SHOW VIEW hebben op de bronserver en de bevoegdheid CREATE VIEW op de doelserver.
- Als u triggers migreert, moet de gebruiker de bevoegdheid TRIGGER hebben op de bron- en doelserver.
- Als u routines (procedures en/of functies) migreert, moet de gebruiker beschikken over de bevoegdheden CREATE ROUTINE en ALTER ROUTINE op serverniveau op het doel.
- Als de gebruiker gebeurtenissen migreert, moet hij of zij het privilege GEBEURTENIS hebben op de bron- en doelserver.
- Als gebruikers/aanmeldingen worden gemigreerd, moet de gebruiker de bevoegdheid CREATE USER hebben op de doelserver.
- De bevoegdheid DROP op het serverniveau van het doel, zodat bestaande tabellen kunnen worden verwijderd. Bijvoorbeeld wanneer u een migratie opnieuw probeert uit te voeren.
- De bevoegdheid VERWIJZINGEN op serverniveau op de doeldatabase om tabellen met foreign keys te maken.
- Als de gebruiker migreert naar MySQL 8.0, moet de gebruiker de bevoegdheid 'SESSION_VARIABLES_ADMIN' hebben op de doelserver.
- 'CREATE' -bevoegdheid op serverniveau op het doel.
- "INSERT"-rechten op serverniveau op de doelserver.
- 'UPDATE' -bevoegdheid op serverniveau voor het doelobject.
- De bevoegdheid DELETE op serverniveau op het doel.
De grootte van het Azure Database for MySQL-doelexemplaren wijzigen
De volgende serverparameters en configuratiewijzigingen worden aanbevolen om de Azure Database for MySQL-doelserver voor te bereiden op snellere gegevensbelastingen met behulp van de Azure Database Migration Service.
max_allowed_packet : ingesteld op 1073741824 (bijvoorbeeld 1 GB) om verbindingsproblemen vanwege grote rijen te voorkomen.
slow_query_log : ingesteld op UIT om het logboek voor langzame query's uit te schakelen. Dit elimineert de overhead die wordt veroorzaakt door trage logboekregistratie van query's tijdens het laden van gegevens.
query_store_capture_mode: ingesteld op NONE om Query Store uit te schakelen. Dit elimineert de overhead die wordt veroorzaakt door steekproeven door Query Store.
innodb_buffer_pool_size: Innodb_buffer_pool_size kan alleen worden verhoogd door de rekenkracht voor de Azure Database for MySQL-server op te schalen. Schaal de server omhoog naar 64 vCore SKU algemeen gebruik vanuit de prijscategorie van de portal tijdens de migratie om de innodb_buffer_pool_size te verhogen.
innodb_io_capacity & innodb_io_capacity_max : wijzig in 9000 van de serverparameters in Azure Portal om het IO-gebruik te verbeteren om de migratiesnelheid te optimaliseren.
innodb_write_io_threads &innodb_write_io_threads : wijzig in 4 van de serverparameters in Azure Portal om de migratiesnelheid te verbeteren.
Opslaglaag omhoog schalen: de IOPS voor Azure Database for MySQL-server neemt geleidelijk toe met de toename van de opslaglaag.
- In de optie flexibele serverimplementatie raden we u aan IOPS te schalen (vergroten of verkleinen), ongeacht de opslaggrootte.
- De opslaggrootte kan alleen omhoog worden geschaald, niet omlaag.
Selecteer de rekenkracht en de rekenlaag voor de flexibele doelserver op basis van de configuratie van de mySQL-bronserver.
1 Voor de migratie, als best practice selecteert u Compute voor algemeen gebruik 16 vCores of hoger voor de flexibele doelserver voor snellere migraties. Schaal terug naar de gewenste rekengrootte voor de doelserver nadat de migratie is voltooid.
Zodra de migratie is voltooid, kunt u de serverparameters en -configuratie terugzetten naar waarden die zijn vereist voor uw workload.
DMS instellen
Wanneer uw flexibele doelserver is geïmplementeerd en geconfigureerd, moet u vervolgens DMS instellen om uw MySQL-server te migreren naar een flexibele server.
De resourceprovider registreren
Voer de volgende stappen uit om de Resourceprovider Microsoft.DataMigration te registreren.
Voordat u uw eerste DMS-exemplaar maakt, meldt u zich aan bij Azure Portal en zoekt en selecteert u vervolgens Abonnementen.
Selecteer het abonnement dat u wilt gebruiken om het DMS-exemplaar te maken en selecteer vervolgens Resourceproviders.
Zoek de term 'Migratie' en selecteer Registreren voor Microsoft.DataMigration.
Een Database Migration Service-exemplaar maken
Selecteer in Azure Portal + Een resource maken, zoek naar Azure Database Migration Service en selecteer vervolgens Azure Database Migration Service in de vervolgkeuzelijst.
Selecteer Maken in het scherm Azure Database Migration Service.
Geef in het scherm Migratieservice maken een naam op voor de service, het abonnement en een nieuwe of bestaande resourcegroep.
Selecteer een prijscategorie en ga naar het netwerkscherm. Offlinemigratiemogelijkheden zijn alleen beschikbaar in de Premium-prijscategorie.
Zie de pagina met prijzen voor meer informatie over kosten en prijscategorieën.
Selecteer een bestaand virtueel netwerk in de lijst of geef de naam op van het nieuwe virtuele netwerk dat moet worden gemaakt. Naar het scherm Controleren en maken gaan. U kunt eventueel tags toevoegen aan de service met behulp van het scherm Tags.
Het virtuele netwerk biedt Azure Database Migration Service toegang tot de bron-SQL Server en het doel-Azure SQL Database-exemplaar.
Zie het artikel Een virtueel netwerk maken met behulp van Azure Portal voor meer informatie over het maken van een virtueel netwerk in Azure Portal.
Controleer de configuraties en selecteer Maken om de service te maken.
Een migratieproject maken
Nadat de service is gemaakt, zoek deze op in de Azure-portal, open hem en maak vervolgens een nieuw migratieproject.
Selecteer alle services in Azure Portal, zoek naar Azure Database Migration Service en selecteer vervolgens Azure Database Migration Services.
Selecteer uw migratieservice-exemplaar in de zoekresultaten en selecteer + Nieuw migratieproject.
Geef in het scherm Nieuw migratieproject een naam op voor het project, selecteer MySQL in het selectievak bronservertype, selecteer in het selectievak doelservertype, selecteer Azure Database For MySQL en selecteer gegevensmigratie in het selectievak Migratieactiviteit. Selecteer Activiteit maken en uitvoeren.
U kunt ook alleen Project maken kiezen om het migratieproject nu te maken en de migratie later uit te voeren.
Migratieproject configureren
Geef op het scherm Bron selecteren de verbindingsgegevens op voor het MySQL-bronexemplaar en selecteer Volgende: Doel selecteren>>
Geef in het scherm Doel selecteren de verbindingsgegevens op voor de Azure Database for MySQL-doelexemplaar en selecteer Volgende: Databases selecteren>>
Selecteer op het scherm Databases selecteren de bron- en doeldatabase voor migratie, en kies vervolgens Volgende: Configureer migratie-instellingen>>. U kunt de optie Bronserver alleen-lezen maken selecteren om de bron als alleen-lezen te maken, maar wees voorzichtig dat dit een instelling op serverniveau is. Als deze optie is geselecteerd, wordt de hele server ingesteld op alleen-lezen, niet alleen op de geselecteerde databases.
Als de doeldatabase de naam van de dezelfde database als de bron-database bevat, wordt in Azure Database Migration Service de doeldatabase standaard geselecteerd.
Selecteer in het scherm Migratie-instellingen configureren de tabellen die deel uitmaken van de migratie en selecteer Volgende: Samenvatting>>. Als de doeltabellen gegevens bevatten, worden ze niet standaard geselecteerd, maar kunt u ze expliciet selecteren en worden ze afgekapt voordat u de migratie start.
Geef in het tekstvak Activiteitsnaam in het venster Samenvatting een naam op voor de migratieactiviteit en controleer de samenvatting om ervoor te zorgen dat de bron- en doeldetails overeenkomen met wat u eerder hebt opgegeven.
Selecteer Migratie starten. Het venster migratieactiviteit wordt weergegeven en de status van de activiteit staat op Initialiseren. De status verandert in Actief wanneer de tabelmigraties starten.
De migratie bewaken
Selecteer Vernieuwen in het scherm migratieactiviteit om de weergave bij te werken en bekijk de voortgang over het aantal voltooide tabellen.
U kunt de databasenaam in het activiteitsscherm selecteren om de status van elke tabel te zien terwijl ze worden gemigreerd. Selecteer Vernieuwen om de weergave bij te werken.
Migratie voltooien
Selecteer vernieuwen in het scherm migratieactiviteit om de weergave bij te werken totdat de status van de migratie wordt weergegeven als Voltooid.
Activiteiten na migratie
Migratie-cutover in een offlinemigratie is een toepassingsafhankelijk proces dat buiten het bereik van dit document valt, maar de volgende activiteiten na de migratie zijn voorgeschreven:
- Maak aanmeldingen, rollen en machtigingen volgens de toepassingsvereisten.
- Maak alle triggers in de doeldatabase opnieuw zoals geëxtraheerd tijdens de stap vóór de migratie.
- Test de integriteit van de toepassing op basis van de doeldatabase om de migratie te certificeren.
Resources opschonen
Als u de Database Migration Service niet meer gaat gebruiken, kunt u de service verwijderen met de volgende stappen:
Selecteer alle services in Azure Portal, zoek naar Azure Database Migration Service en selecteer vervolgens Azure Database Migration Services.
Selecteer uw migratieservice-exemplaar in de zoekresultaten en selecteer Service verwijderen.
In het bevestigingsvenster, typ de naam van de service in het tekstvak NAAM VAN DE DATABASE MIGRATION SERVICE IN en selecteer Verwijderen.
Gerelateerde inhoud
- Veelvoorkomende problemen en fouten met Azure Database Migration Service (klassiek) oplossen
- DMS-fouten oplossen bij het maken van verbinding met brondatabases
- Wat is Azure Database Migration Service?
- Wat is Azure Database for MySQL?
- MySQL offline migreren naar Azure Database for MySQL met PowerShell & Azure Database Migration Service