Självstudie: Utforma Azure Database for MySQL med Azure CLI
GÄLLER FÖR: Azure Database for MySQL – enskild server
Viktigt!
Azure Database for MySQL – enskild server är på väg att dras tillbaka. Vi rekommenderar starkt att du uppgraderar till en flexibel Azure Database for MySQL-server. Mer information om hur du migrerar till en flexibel Azure Database for MySQL-server finns i Vad händer med Azure Database for MySQL – enskild server?
Azure Database for MySQL är en relationsdatabastjänst i Microsoft-molnet som är baserad på databasmotorn MySQL Community Edition. I den här självstudien kommer du att använda Azure CLI (kommandoradsgränssnittet) och andra verktyg till följande:
- Skapa en Azure Database for MySQL
- Konfigurera serverbrandväggen
- Använda kommandoradsverktyget mysql till att skapa en databas
- Läsa in exempeldata
- Fråga efter data
- Uppdatera data
- Återställa data
Om du inte har en Azure-prenumeration skapar du ett kostnadsfritt Azure-konto innan du börjar.
Förutsättningar
Använd Bash-miljön i Azure Cloud Shell. Mer information finns i Snabbstart för Bash i Azure Cloud Shell.
Om du föredrar att köra CLI-referenskommandon lokalt installerar du Azure CLI. Om du kör i Windows eller macOS kan du köra Azure CLI i en Docker-container. Mer information finns i Så här kör du Azure CLI i en Docker-container.
Om du använder en lokal installation loggar du in på Azure CLI med hjälp av kommandot az login. Slutför autentiseringsprocessen genom att följa stegen som visas i terminalen. Andra inloggningsalternativ finns i Logga in med Azure CLI.
När du uppmanas att installera Azure CLI-tillägget vid första användningen. Mer information om tillägg finns i Använda tillägg med Azure CLI.
Kör az version om du vill hitta versionen och de beroende bibliotek som är installerade. Om du vill uppgradera till den senaste versionen kör du az upgrade.
- Den här artikeln kräver version 2.0 eller senare av Azure CLI. Om du använder Azure Cloud Shell är den senaste versionen redan installerad.
Om du har flera prenumerationer väljer du en lämplig prenumerationen där resursen ligger eller faktureras. Välj en specifik prenumerations-ID under ditt konto med hjälp av kommandot az account set.
az account set --subscription 00000000-0000-0000-0000-000000000000
Skapa en resursgrupp
Skapa en Azure-resursgrupp med kommandot az group create. En resursgrupp är en logisk container där Azure-resurser distribueras och hanteras som en grupp.
I följande exempel skapas en resursgrupp med namnet myresourcegroup
på platsen westus
.
az group create --name myresourcegroup --location westus
Skapa en Azure Database för MySQL-server
Skapa en Azure Database for MySQL-server med kommandot az mysql server create. En server kan hantera flera databaser. Normalt används en separat databas för varje projekt eller för varje användare.
I följande exempel skapas en Azure Database för MySQL-server i westus
i resursgruppen myresourcegroup
med namnet mydemoserver
. Servern har en administratörsanvändare med namnet myadmin
. Det här är 5:e generationens server för generell användning med 2 virtuella kärnor. Ersätt <server_admin_password>
med ditt eget värde.
az mysql server create --resource-group myresourcegroup --name mydemoserver --location westus --admin-user myadmin --admin-password <server_admin_password> --sku-name GP_Gen5_2 --version 5.7
Parametervärdet sku-name följer konventionen {pricing tier}_{compute generation}_{vCores} som i exemplen nedan:
--sku-name B_Gen5_2
mappar till Basic, Gen 5 och 2 virtuella kärnor.--sku-name GP_Gen5_32
mappar till generell användning, Gen 5 och 32 vCores.--sku-name MO_Gen5_2
mappar till minnesoptimerad, Gen 5 och 2 virtuella kärnor.
Se dokumentationen om prisnivåer för mer information om giltiga värden per region och nivå.
Viktigt!
Det användarnamn och lösenord för serveradministration du anger här krävs för inloggning på servern och databaserna senare i den här snabbstarten. Kom ihåg eller skriv ned den här informationen så att du kan använda den senare.
Konfigurera brandväggsregeln
Skapa en Azure Database för MySQL-brandväggsregel på servernivå med kommandot az mysql server firewall-rule create. En brandväggsregel på servernivå gör att externa program, som kommandoradsverktyget mysql eller MySQL Workbench, kan ansluta till servern via Azure MySQL-tjänstens brandvägg.
I följande exempel skapas en brandväggsregel som kallas AllowMyIP
som tillåter anslutningar från den specifika IP-adressen 192.168.0.1. Ersätt en IP-adress eller omfång av IP-adresser som motsvarar platsen som du kommer att ansluta från.
az mysql server firewall-rule create --resource-group myresourcegroup --server mydemoserver --name AllowMyIP --start-ip-address 192.168.0.1 --end-ip-address 192.168.0.1
Hämta anslutningsinformationen
För att ansluta till servern måste du ange värddatorinformationen och autentiseringsuppgifterna.
az mysql server show --resource-group myresourcegroup --name mydemoserver
Resultatet är i JSON-format. Anteckna fullyQualifiedDomainName och administratorLogin.
{
"administratorLogin": "myadmin",
"administratorLoginPassword": null,
"fullyQualifiedDomainName": "mydemoserver.mysql.database.azure.com",
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myresourcegroup/providers/Microsoft.DBforMySQL/servers/mydemoserver",
"location": "westus",
"name": "mydemoserver",
"resourceGroup": "myresourcegroup",
"sku": {
"capacity": 2,
"family": "Gen5",
"name": "GP_Gen5_2",
"size": null,
"tier": "GeneralPurpose"
},
"sslEnforcement": "Enabled",
"storageProfile": {
"backupRetentionDays": 7,
"geoRedundantBackup": "Disabled",
"storageMb": 5120
},
"tags": null,
"type": "Microsoft.DBforMySQL/servers",
"userVisibleState": "Ready",
"version": "5.7"
}
Anslut till servern med mysql
Använd kommandoradsverktyget mysql till att upprätta en anslutning till din Azure Database for MySQL-server. I det här exemplet är kommandot:
mysql -h mydemoserver.mysql.database.azure.com -u myadmin@mydemoserver -p
Skapa en tom databas
När du är ansluten till servern ska du skapa en tom databas.
mysql> CREATE DATABASE mysampledb;
Kör följande kommando från prompten för att växla anslutningen till databasen du skapade nyss:
mysql> USE mysampledb;
Skapa tabeller i databasen
Nu när du vet hur du ansluter till Azure Database for MySQL-databasen kan du utföra några grundläggande uppgifter.
Skapa först en tabell och läs in lite data till den. Vi skapar en tabell som innehåller lagerinformation.
CREATE TABLE inventory (
id serial PRIMARY KEY,
name VARCHAR(50),
quantity INTEGER
);
Läs in data till tabellerna
Nu när du har en tabell kan du infoga lite data i den. Kör följande fråga i den öppna kommandotolken så at du löser in några datarader.
INSERT INTO inventory (id, name, quantity) VALUES (1, 'banana', 150);
INSERT INTO inventory (id, name, quantity) VALUES (2, 'orange', 154);
Nu har du två rader med exempeldata i tabellen du skapade tidigare.
Ställ frågor mot och uppdatera data i tabellerna
Kör följande frågor för att hämta information från databastabellen.
SELECT * FROM inventory;
Du kan även uppdatera data i tabellerna.
UPDATE inventory SET quantity = 200 WHERE name = 'banana';
Raden uppdateras när du hämtar data.
SELECT * FROM inventory;
Återställa en databas till en tidigare tidpunkt
Anta att du har tagit bort den här tabellen av misstag. Det kan du lätt åtgärda genom återställning. Med Azure Database for MySQL kan du gå tillbaka till valfri tidpunkt under de senaste 35 dagarna och återställa tidpunkten på en ny server. Du kan använda den nya servern till att återställa dina data. Följande steg återställer exempelservern till en tidpunkt innan tabellen lades till.
Du behöver följande information vid återställningen:
- Återställningspunkt: Välj en tidpunkt innan servern ändrades. Måste vara senare än eller lika med källdatabasens äldsta säkerhetskopiering.
- Målserver: Ange ett nytt servernamn som du vill återställa till
- Källserver: Ange namnet på den server du vill återställa från.
- Plats: Du kan inte välja region, som standard är det samma som källservern
az mysql server restore --resource-group myresourcegroup --name mydemoserver-restored --restore-point-in-time "2017-05-4 03:10" --source-server-name mydemoserver
Följande parametrar behövs för kommandot az mysql server restore
:
Inställning | Föreslaget värde | Beskrivning |
---|---|---|
resource-group | myresourcegroup | Resursgruppen där källservern finns. |
name | mydemoserver-restored | Namnet på den nya server som skapas med kommandot restore. |
restore-point-in-time | 2017-04-13T13:59:00Z | Välj en tidpunkt att återställa till. Datumet och tiden måste finnas inom källserverns kvarhållningsperiod för säkerhetskopiering. Använd datum- och tidsformatet ISO8601. Du kan använda din egen lokala tidszon som t.ex. 2017-04-13T05:59:00-08:00 , eller använda UTC Zulu-formatet 2017-04-13T13:59:00Z . |
source-server | mydemoserver | Namn eller ID på källservern som återställningen görs från. |
När du återställer en server till en tidpunkt så skapas en ny server. Den kopieras som den ursprungliga servern vid den tidpunkt du anger. Plats- och prisnivåvärden för den återställda servern är samma som för källservern.
Kommandot är synkront och återgår när servern har återställts. När återställningen är klar letar du upp den nya server som skapades. Kontrollera att dina data har återställts som förväntat.
Rensa resurser
Om du inte behöver de här resurserna för en annan snabbstart/självstudie kan du ta bort dem genom att utföra följande kommando:
az group delete --name myresourcegroup
Om du endast vill ta bort den nyss skapade servern kan du köra kommandot az mysql server delete.
az mysql server delete --resource-group myresourcegroup --name mydemoserver
Nästa steg
I de här självstudierna lärde du dig att:
- Skapa en Azure Database för MySQL-server
- Konfigurera serverbrandväggen
- Använda kommandoradsverktyget mysql till att skapa en databas
- Läsa in exempeldata
- Fråga efter data
- Uppdatera data
- Återställa data