Share via


Azure Pipelines voor Azure Database for MySQL - Enkele server

VAN TOEPASSING OP: Azure Database for MySQL - enkele server

Ga aan de slag met Azure Database for MySQL door een database-update te implementeren met Azure Pipelines. Met Azure Pipelines kunt u met behulp van Azure DevOps bouwen, testen en implementeren met continue integratie (CI) en continue levering (CD).

U gebruikt de azure Database for MySQL-implementatietaak. De Azure Database for MySQL-implementatietaak werkt alleen met azure Database for MySQL enkele server.

Vereisten

Voordat u begint, hebt u het volgende nodig:

In deze snelstartgids worden de resources die in een van deze handleidingen zijn gemaakt, als uitgangspunt gebruikt:

Uw pijplijn maken

U gebruikt de basisstartpijplijn als basis voor uw pijplijn.

  1. Meld u aan bij uw Azure DevOps-organisatie en ga naar uw project.

  2. Navigeer in het project naar de pagina Pijplijnen. Kies vervolgens de actie om een nieuwe pijplijn te maken.

  3. Doorloop de stappen van de wizard door eerst GitHub te selecteren als de locatie van de broncode.

  4. U wordt mogelijk omgeleid naar GitHub om u aan te melden. Voer in dat geval uw GitHub-referenties in.

  5. Wanneer de lijst met opslagplaatsen wordt weergegeven, selecteert u de gewenste opslagplaats.

  6. Azure Pipelines analyseert uw opslagplaats en biedt configuratieopties. Selecteer Starter-pijplijn.

    Screenshot of Select Starter pipeline.

Een geheim maken

U moet de naam van uw databaseserver, de SQL-gebruikersnaam en het SQL-wachtwoord kennen voor gebruik met de Azure Database for MySQL-implementatietaak.

Voor beveiliging wilt u uw SQL-wachtwoord opslaan als een geheime variabele in de gebruikersinterface voor pijplijninstellingen voor uw pijplijn.

  1. Ga naar de pagina Pijplijnen , selecteer de juiste pijplijn en selecteer Vervolgens Bewerken.

  2. Selecteer Variabelen.

  3. Voeg een nieuwe variabele toe met de naam SQLpass en selecteer Dit waardegeheim behouden om de variabele te versleutelen en op te slaan.

    Screenshot of adding a secret variable.

  4. Selecteer OK en Opslaan om de variabele toe te voegen.

Machtigingen voor uw database controleren

Als u toegang wilt krijgen tot uw MySQL-database met Azure Pipelines, moet u uw database zo instellen dat verbindingen van alle Azure-resources worden geaccepteerd.

  1. Open uw databaseresource in Azure Portal.

  2. Selecteer Verbinding maken ionbeveiliging.

  3. Schakel Toegang tot Azure-servicesin op Ja.

    Screenshot of setting MySQL to allow Azure connections.

De Azure Database for MySQL-implementatietaak toevoegen

In dit voorbeeld maken we een nieuwe database met de naam quickstartdb en voegen we een inventaristabel toe. Het inline SQL-script doet het volgende:

  • Verwijderen quickstartdb als deze bestaat en een nieuwe quickstartdb database maken.
  • Verwijder de tabel inventory als deze bestaat en maak een nieuwe inventory tabel.
  • Voeg drie rijen in inventory.
  • Alle rijen weergeven.
  • Werk de waarde van de eerste rij in inventorybij.
  • Verwijder de tweede rij in inventory.

U moet de volgende waarden in uw implementatietaak vervangen.

Invoer Omschrijving Voorbeeld
azureSubscription Verifieer met uw Azure-abonnement met een serviceverbinding. My Subscription
ServerName De naam van uw Azure Database for MySQL-server. fabrikam.mysql.database.azure.com
SqlUsername De gebruikersnaam van uw Azure Database for MySQL. mysqladmin@fabrikam
SqlPassword Het wachtwoord voor de gebruikersnaam. Dit moet worden gedefinieerd als een geheime variabele. $(SQLpass)

trigger:
- main

pool:
  vmImage: ubuntu-latest

steps:
- task: AzureMysqlDeployment@1
  inputs:
    azureSubscription: '<your-subscription>
    ServerName: '<db>.mysql.database.azure.com'
    SqlUsername: '<username>@<db>'
    SqlPassword: '$(SQLpass)'
    TaskNameSelector: 'InlineSqlTask'
    SqlInline: |
      DROP DATABASE IF EXISTS quickstartdb;
      CREATE DATABASE quickstartdb;
      USE quickstartdb;
      
      -- Create a table and insert rows
      DROP TABLE IF EXISTS inventory;
      CREATE TABLE inventory (id serial PRIMARY KEY, name VARCHAR(50), quantity INTEGER);
      INSERT INTO inventory (name, quantity) VALUES ('banana', 150);
      INSERT INTO inventory (name, quantity) VALUES ('orange', 154);
      INSERT INTO inventory (name, quantity) VALUES ('apple', 100);
      
      -- Read
      SELECT * FROM inventory;
      
      -- Update
      UPDATE inventory SET quantity = 200 WHERE id = 1;
      SELECT * FROM inventory;
      
      -- Delete
      DELETE FROM inventory WHERE id = 2;
      SELECT * FROM inventory;
    IpDetectionMethod: 'AutoDetect'

Resources implementeren en verifiëren

Selecteer Opslaan en uitvoeren om uw pijplijn te implementeren. De pijplijntaak wordt gestart en na enkele minuten moet de taakstatus aangeven Success.

U kunt controleren of de pijplijn is uitgevoerd binnen de AzureMysqlDeployment taak in de pijplijnuitvoering.

Open de taak en controleer of in de laatste twee vermeldingen twee rijen worden weergegeven.inventory Er zijn twee rijen omdat de tweede rij is verwijderd.

Screenshot to show reviewing final table results.

Resources opschonen

Wanneer u klaar bent met het werken met uw pijplijn, verwijdert quickstartdb u deze in uw Azure Database for MySQL. U kunt ook de implementatiepijplijn verwijderen die u hebt gemaakt.

Volgende stappen