On-premises MySQL-database migreren naar Azure

Voltooid

Zodra een bedrijf de beslissing neemt om over te stappen op Azure Database for MySQL, is de volgende stap het plannen van het migreren van on-premises databases en het kiezen van de hulpprogramma's om hun gegevens te verplaatsen.

Nadat u hebt verkend hoe Azure Database for MySQL MySQL ondersteunt en schaalt in Azure, wilt u nu overwegen hoe u uw bestaande on-premises databases migreert.

In deze les ziet u hoe u een exemplaar van de Azure Database for MySQL-service maakt met behulp van Azure Portal. Als u veel exemplaren van deze service moet maken, kunt u het proces scripten met behulp van de Azure CLI.

Een Azure Database for MySQL maken met behulp van de portal

Selecteer in Azure Portal de opdracht Databases in Azure Marketplace en selecteer Azure Database for MySQL.

Afbeelding van het Azure Database for MySQL-item in Azure Marketplace

Voer de details voor de service in. Deze omvatten:

  • Server name (Servernaam). Dit moet een unieke naam tussen 3 en 63 tekens zijn, met alleen kleine letters, cijfers en afbreekstreepjes.
  • Gegevensbron. Als u een nieuwe server maakt voor migratiedoeleinden, selecteert u Geen. Met de optie Back-up kunt u een back-up herstellen die is gemaakt van een ander exemplaar van Azure Database for MySQL in deze service.
  • Gebruikersnaam van beheerder. Dit is de naam van een gebruikersaccount dat wordt gemaakt met beheerdersbevoegdheden. Azure maakt enkele accounts voor eigen gebruik en andere namen worden beperkt; u kunt geen azure_superuser, beheerder, beheerder, hoofdbeheerder, gast of openbaar gebruiken.
  • Wachtwoord. Dit moet tussen de 8 en 128 tekens zijn. Het moet een combinatie van hoofdletters en kleine letters, cijfers en niet-phanumerische tekens bevatten. Azure Database for MySQL ondersteunt momenteel alleen wachtwoordverificatie; integratie met Microsoft Entra ID is nog niet beschikbaar.
  • Versie. Selecteer de versie die overeenkomt met de on-premises database die u migreert.
  • Berekening en opslag. Selecteer Server configureren om de prijscategorie in te stellen en geef de resources op die u nodig hebt voor de service. De opties zijn besproken in les 1. Houd er rekening mee dat als u de prijscategorieën Algemeen of Geoptimaliseerd voor geheugen selecteert, u het aantal virtuele processorkernen later omhoog en omlaag schaalt. U kunt de hoeveelheid opslagruimte echter niet verminderen. het kan alleen toenemen nadat de server is gemaakt.

Schermopname van een voorbeeldconfiguratie voor Azure Database for MySQL in Azure Portal.

Selecteer Beoordelen en maken om de service te implementeren. De implementatie duurt enkele minuten.

Nadat de service is geïmplementeerd, selecteert u de beveiligingsoptie Verbinding maken ion en voegt u de juiste firewallregels toe om clients in staat te stellen verbinding te maken, zoals beschreven in het onderwerp Client Verbinding maken iviteit in Les 1. U moet ook de optie Toegang tot Azure-services toestaan selecteren.

Een Azure Database for MySQL-exemplaar maken met behulp van de Azure CLI

U maakt een exemplaar van Azure Database for MySQL met behulp van de az mysql server create opdracht. In de onderstaande instructie ziet u een voorbeeld waarmee een MySQL-exemplaar wordt gemaakt. De meeste parameters zijn verklarend, met uitzondering van het volgende:

  • sku-naam. U maakt dit op basis van een combinatie van de prijscategorie (B voor Basic, GP voor Algemeen gebruik en MO voor Geoptimaliseerd voor geheugen), de berekeningsgeneratie (Gen4 of Gen5) en het aantal virtuele CPU-kernen. In het onderstaande voorbeeld wordt de server gemaakt met behulp van de prijscategorie Algemeen gebruik, met vier CPU-kernen van de Gen5-generatie.
  • opslaggrootte. Dit is de hoeveelheid schijfopslag die is vereist, opgegeven in megabytes. In het onderstaande voorbeeld worden 10 gigabyte toegewezen.
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

Offlinemigratie uitvoeren

Een offlinemigratie maakt een momentopname van de brondatabase op een bepaald tijdstip en kopieert die gegevens naar de doeldatabase. Wijzigingen die zijn aangebracht in de brongegevens nadat de momentopname is gemaakt, worden niet doorgevoerd in de doeldatabase.

U hebt ten minste twee opties als u een offlinemigratie naar Azure Database for MySQL wilt uitvoeren:

Exporteren en importeren

U kunt een database uit MySQL exporteren en importeren in Azure Database for MySQL met behulp van hulpprogramma's zoals MySQL Workbench. Dit is handig in een aantal scenario's:

  • U wilt selecteren welke tabellen u wilt importeren.
  • U wilt selecteren welke databaseobjecten u wilt exporteren en importeren, inclusief weergaven, opgeslagen procedures, beperkingen en functies.
  • U wilt ook gegevens uit andere bronnen migreren. U moet bijvoorbeeld gegevens uit tekstbestanden toevoegen en mysqlimport gebruiken om deze als tabellen toe te voegen aan uw database.

U kunt een export uitvoeren en importeren met MySQL Workbench. Selecteer in het menu Server de optie Gegevens exporteren of Gegevens importeren.

Notitie

U kunt mysqldump ook gebruiken om specifieke tabellen te exporteren door hun namen na de databasenaam weer te geven.

Zie Uw MySQL-database migreren met behulp van importeren en exporteren voor meer informatie.

Dumpen en herstellen

Gebruik dump en herstel wanneer u de hele database efficiënt wilt verplaatsen.

Er zijn een aantal overwegingen bij het gebruik van dump en herstel:

  • Voorkomen dat triggers worden geactiveerd tijdens het herstellen met behulp van de optie voor uitsluitingstriggers .
  • Dump de volledige database in één transactie met de optie voor één transactie .
  • Schakel beperkingen voor refererende sleutels uit tijdens het proces met de optie voor uitschakelen van sleutels .
  • Het maken van de index uitstellen totdat het herstellen is voltooid met de optie tabel-indexen uitstellen.

Zie mysqldump : een back-upprogramma voor databases voor meer informatie over mysqldump.

Notitie

U gebruikt mysqldump ook om specifieke tabellen te exporteren door hun namen na de databasenaam weer te geven.

Azure Database Migration Service (DMS)

Naast offlinemigraties naar Azure Database for MySQL biedt DMS ondersteuning voor migraties tussen regio's, meerdere resources en migraties tussen abonnementen, zodat u een regio, resourcegroep en abonnement kunt selecteren voor de doelserver die verschilt van wat is opgegeven voor uw bronserver.

Migreren met behulp van dump en herstel

Voer de volgende stappen uit om een database te migreren met behulp van de dump- en herstelbenadering.

  1. Exporteer de gegevens naar een ander bestand met de opdracht mysqldump:

    mysqldump -h [host name] -u [username] -p[password] [database name] > db_data.sql
    

    Op dit moment is db_data.sql een SQL-script dat u wijzigt met behulp van een teksteditor.

  2. Maak de doeldatabase in Azure Database for MySQL. U doet dit met de Azure CLI:

    az mysql db create \
        --name [database name] \
        --server-name [server name] \
        --resource-group [azure resource group]
    
  3. Importeer de gegevens in de doeldatabase met de mysql-opdracht:

    mysql -h [host name] -u [username] -p[password] [database name] < db_data.sql
    

Onlinemigratie uitvoeren

DMS biedt ook ondersteuning voor onlinemigratie naar Azure Database for MySQL. Voor de onlinemigratie raden we u aan om 16 vCores voor algemeen gebruik te selecteren voor de flexibele doelserver voor snellere migraties. Schaal terug naar de gewenste rekenkracht voor de doelserver nadat de migratie is voltooid, op basis van de details in de volgende tabel.

Prijscategorie voor één server VCores met één server Rekenkracht van flexibele server Rekenlaag van flexibele server
Basis 1 Met burstfunctie Standard_B1s
Basis 2 Met burstfunctie Standard_B2s
Algemeen gebruik 4 Algemeen gebruik Standard_D4ds_v4
Algemeen gebruik 8 Algemeen gebruik Standard_D8ds_v4

Voor meer informatie over onlinemigratie naar Azure Database for MySQL raadpleegt u zelfstudie: Azure Database for MySQL - Enkele server online migreren naar flexibele server met behulp van DMS via Azure Portal.