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:
- Ein Azure-Konto mit einem aktiven Abonnement. Sie können kostenlos ein Konto erstellen.
- Eine aktive Azure DevOps Organisation. Registrieren Sie sich für Azure Pipelines.
- Ein GitHub Repository, das Sie für Ihre Pipeline verwenden können. Wenn Sie kein vorhandenes Repository haben, finden Sie unter Erstellen Ihrer ersten Pipeline.
In diesem Schnellstart werden die Ressourcen, die in den folgenden Anleitungen erstellt wurden, als Startpunkt verwendet:
- Erstellen eines Servers für Azure-Datenbank für MySQL mithilfe des Azure-Portals
- Erstellen eines Servers für Azure-Datenbank für MySQL mithilfe der Azure CLI
Erstellen Ihrer Pipeline
Sie verwenden die Basisstartpipeline als Basis für Ihre Pipeline.
Melden Sie sich bei Ihrer Azure DevOps-Organisation an, und wechseln Sie zu Ihrem Projekt.
Navigieren Sie in Ihrem Projekt zur Seite Pipelines. Wählen Sie dann die Aktion zum Erstellen einer neuen Pipeline aus.
Führen Sie die Schritte des Assistenten aus. Wählen Sie zuerst GitHub als Speicherort Ihres Quellcodes aus.
Möglicherweise werden Sie zu GitHub weitergeleitet, um sich anzumelden. Geben Sie in diesem Fall Ihre Anmeldeinformationen für GitHub ein.
Wenn die Liste der Repositorys angezeigt wird, wählen Sie Ihr gewünschtes Repository aus.
Azure Pipelines analysiert Ihr Repository und bieten Konfigurationsoptionen an. Wählen Sie Starterpipeline aus.
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.
Wechseln Sie zur Seite Pipelines, wählen Sie die entsprechende Pipeline aus und klicken Sie dann auf Bearbeiten.
Wählen Sie Variablen aus.
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.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.
Öffnen Sie in der Azure-Portal Ihre Datenbankressource.
Klicken Sie auf Verbindungssicherheit.
Umschalter Zulassen des Zugriffs auf Azure-Dienste zu Ja.
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 neuequickstartdb
Datenbank. - Löschen Sie die Tabelle, wenn sie vorhanden ist, und erstellt eine neue
inventory
Tabelleinventory
. - Fügen Sie drei Zeilen in
inventory
ein . - 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.
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.