Schnellstart: Bereitstellen in einer Azure MySQL-Datenbank

Azure DevOps Services

Erste Schritte mit Azure Database for MySQL, indem Sie ein Datenbankupdate mit Azure Pipelines bereitstellen. Azure Database for MySQL ist ein relationaler Datenbankdienst in der Microsoft-Cloud. In diesem Schnellstart wird die Aktualisierung einer Datenbank mit einem einzigen Server ausgeführt.

Sie verwenden die Azure Database for MySQL Bereitstellungsaufgabe. Die Azure Database for MySQL Bereitstellungsaufgabe funktioniert nur mit Azure Database for MySQL Single Server.

Voraussetzungen

Bevor Sie beginnen, benötigen Sie Folgendes:

In diesem Schnellstart werden die Ressourcen, die in den folgenden Anleitungen erstellt wurden, als Startpunkt verwendet:

Erstellen Ihrer Pipeline

Sie verwenden die Basisstartpipeline als Basis für Ihre Pipeline.

  1. Melden Sie sich bei Ihrer Azure DevOps-Organisation an, und wechseln Sie zu Ihrem Projekt.

  2. Navigieren Sie in Ihrem Projekt zur Seite Pipelines. Wählen Sie dann die Aktion zum Erstellen einer neuen Pipeline aus.

  3. Führen Sie die Schritte des Assistenten aus. Wählen Sie zuerst GitHub als Speicherort Ihres Quellcodes aus.

  4. Möglicherweise werden Sie zu GitHub weitergeleitet, um sich anzumelden. Geben Sie in diesem Fall Ihre Anmeldeinformationen für GitHub ein.

  5. Wenn die Liste der Repositorys angezeigt wird, wählen Sie Ihr gewünschtes Repository aus.

  6. Azure Pipelines analysiert Ihr Repository und bieten Konfigurationsoptionen an. Wählen Sie Starterpipeline aus.

    Select Starter pipeline.

Erstellen eines Geheimnisses

Sie müssen Ihren Datenbankservernamen, SQL Benutzernamen und SQL Kennwort kennen, das mit der Azure Database for MySQL Bereitstellungsaufgabe verwendet werden soll.

Für Sicherheit möchten Sie Ihr SQL Kennwort als geheime Variable in der Benutzeroberfläche für die Pipelineeinstellungen speichern.

  1. Wechseln Sie zur Seite Pipelines, wählen Sie die entsprechende Pipeline aus und klicken Sie dann auf Bearbeiten.

  2. Wählen Sie Variablen aus.

  3. Fügen Sie eine neue Variable namens SQLpass hinzu, und wählen Sie diesen Wert geheim , um die Variable zu verschlüsseln und zu speichern.

    Add a secret variable.

  4. Wählen Sie "Ok " und " Speichern " aus, um die Variable hinzuzufügen.

Überprüfen der Berechtigungen für Ihre Datenbank

Um auf Ihre MySQL-Datenbank mit Azure Pipelines zuzugreifen, müssen Sie Ihre Datenbank so festlegen, dass Verbindungen aus allen Azure-Ressourcen akzeptiert werden.

  1. Öffnen Sie in der Azure-Portal Ihre Datenbankressource.

  2. Klicken Sie auf Verbindungssicherheit.

  3. Umschalter Zulassen des Zugriffs auf Azure-Dienste zu Ja.

    Set MySQL to allow Azure connections.

Hinzufügen der Azure Database for MySQL Bereitstellungsaufgabe

In diesem Beispiel erstellen wir eine neue Datenbank namens quickstartdb und fügen eine Inventartabelle hinzu. Das Inline-SQL Skript wird folgendes ausführen:

  • Löschen Sie quickstartdb , wenn es vorhanden ist, und erstellen Sie eine neue quickstartdb Datenbank.
  • Löschen Sie die Tabelle, wenn sie vorhanden ist, und erstellt eine neue inventory Tabelleinventory.
  • Fügen Sie drei Zeilen in inventoryein .
  • Alle Zeilen anzeigen.
  • Aktualisieren Des Werts der ersten Zeile in inventory.
  • Löschen Sie die zweite Zeile in inventory.

Sie müssen die folgenden Werte in Ihrer Bereitstellungsaufgabe ersetzen.

Eingabe BESCHREIBUNG Beispiel
azureSubscription Authentifizieren Sie sich mit Ihrem Azure-Abonnement mit einer Dienstverbindung. My Subscription
ServerName Der Name Ihres Azure Database for MySQL-Servers. fabrikam.mysql.database.azure.com
SqlUsername Der Benutzername Ihres Azure Database for MySQL. mysqladmin@fabrikam
SqlPassword Das Kennwort für den Benutzernamen. Dies sollte als geheime Variable definiert werden. $(SQLpass)

trigger:
- master

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'

Bereitstellen und Überprüfen von Ressourcen

Wählen Sie "Speichern" aus, und führen Sie sie aus, um Ihre Pipeline bereitzustellen. Der Pipelineauftrag wird gestartet und nach wenigen Minuten sollte der Auftragsstatus angeben Success.

Sie können überprüfen, ob Ihre Pipeline erfolgreich innerhalb der Aufgabe in der AzureMysqlDeployment Pipeline ausgeführt wurde.

Öffnen Sie die Aufgabe, und überprüfen Sie, ob die letzten beiden Einträge zwei Zeilen in inventory. Es gibt zwei Zeilen, da die zweite Zeile gelöscht wurde.

Review final table results.

Bereinigen von Ressourcen

Wenn Sie fertig sind, mit Ihrer Pipeline zu arbeiten, löschen quickstartdb Sie in Ihrem Azure Database for MySQL. Sie können auch die von Ihnen erstellte Bereitstellungspipeline löschen.

Nächste Schritte