Snabbstart: Skapa en Azure Database for PostgreSQL-server med Azure CLI
GÄLLER FÖR: Azure Database for PostgreSQL – enskild server
Viktigt!
Azure Database for PostgreSQL – enskild server är på väg att dras tillbaka. Vi rekommenderar starkt att du uppgraderar till Azure Database for PostgreSQL – flexibel server. Mer information om hur du migrerar till Azure Database for PostgreSQL – flexibel server finns i Vad händer med Azure Database for PostgreSQL – enskild server?.
Den här snabbstarten visar hur du använder Azure CLI-kommandon i Azure Cloud Shell för att skapa en enda Azure Database for PostgreSQL-server på fem minuter.
Dricks
Överväg att använda det enklare azure CLI-kommandot az postgres up . Prova snabbstarten.
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.
Starta Azure Cloud Shell
Azure Cloud Shell är ett interaktivt gränssnitt som du kan använda för att utföra stegen i den här artikeln. Den har vanliga Azure-verktyg förinstallerat och har konfigurerats för användning med ditt konto.
Om du vill öppna Cloud Shell väljer du bara Prova från det övre högra hörnet i ett kodblock. Du kan också starta Cloud Shell i en separat webbläsarflik genom att gå till https://shell.azure.com.
När Cloud Shell öppnas kontrollerar du att Bash har valts för din miljö. Efterföljande sessioner använder Azure CLI i en Bash-miljö, Välj Kopiera för att kopiera kodblocken, klistra in dem i Cloud Shell och tryck på Retur för att köra det.
Logga in på Azure
Cloud Shell autentiseras automatiskt under det första kontot som loggas in med. Använd följande skript för att logga in med en annan prenumeration och ersätt <Subscription ID>
med ditt Azure-prenumerations-ID. Om du inte har en Azure-prenumeration skapar du ett kostnadsfritt Azure-konto innan du börjar.
subscription="<subscriptionId>" # add subscription here
az account set -s $subscription # ...or use 'az login'
Mer information finns i ange en aktiv prenumeration eller logga in interaktivt
Ange parametervärden
Följande värden används i efterföljande kommandon för att skapa databasen och nödvändiga resurser. Servernamn måste vara globalt unika i hela Azure, så funktionen $RANDOM används för att skapa servernamnet.
Ändra platsen efter behov för din miljö. Ersätt 0.0.0.0
med IP-adressintervallet för att matcha din specifika miljö. Använd den offentliga IP-adressen för den dator som du använder för att begränsa åtkomsten till servern till endast din IP-adress.
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-postgresql-rg-$randomIdentifier"
tag="create-postgresql-server-and-firewall-rule"
server="msdocs-postgresql-server-$randomIdentifier"
sku="GP_Gen5_2"
login="azureuser"
password="Pa$$w0rD-$randomIdentifier"
# Specify appropriate IP address values for your environment
# to limit / allow access to the PostgreSQL server
startIp=0.0.0.0
endIp=0.0.0.0
echo "Using resource group $resourceGroup with login: $login, password: $password..."
Skapa en resursgrupp
Skapa en resursgrupp med kommandot az group create. En Azure-resursgrupp är en logisk container där Azure-resurser distribueras och hanteras. I följande exempel skapas en resursgrupp med namnet myResourceGroup på platsen eastus:
# Create a resource group
echo "Creating $resourceGroup in $location..."
az group create --name $resourceGroup --location "$location" --tags $tag
Skapa en server
Skapa en server med kommandot az postgres server create .
# Create a PostgreSQL server in the resource group
# Name of a server maps to DNS name and is thus required to be globally unique in Azure.
echo "Creating $server in $location..."
az postgres server create --name $server --resource-group $resourceGroup --location "$location" --admin-user $login --admin-password $password --sku-name $sku
Kommentar
- Ditt servernamn får bara innehålla gemener, siffror och bindestreck. Den måste innehålla 3 till 63 tecken. Mer information finns i Namngivningsregler för Azure Database for PostgreSQL.
- Användarnamnet för administratörsanvändaren kan inte vara azure_superuser, administratör, administratör, rot, gäst eller offentlig.
- Lösenordet måste innehålla mellan 8 och 128 tecken från tre av följande kategorier: engelska versaler, engelska gemener, siffror och icke-alfanumeriska tecken.
- Information om SKU:er finns i Prissättning för Azure Database for PostgreSQL.
Viktigt!
- Standardversionen av PostgreSQL på servern är 9.6. Information om alla versioner som stöds finns i PostgreSQL-huvudversioner som stöds.
- SSL är aktiverat som standard på servern. Mer information om SSL finns i Konfigurera SSL-anslutning.
Konfigurera en serverbaserad brandväggsregel
Skapa en brandväggsregel med kommandot az postgres server firewall-rule create för att ge din lokala miljö åtkomst att ansluta till servern.
# Configure a firewall rule for the server
echo "Configuring a firewall rule for $server for the IP address range of $startIp to $endIp"
az postgres server firewall-rule create --resource-group $resourceGroup --server $server --name AllowIps --start-ip-address $startIp --end-ip-address $endIp
Dricks
Om du inte känner till din IP-adress går du till WhatIsMyIPAddress.com för att hämta den.
Kommentar
För att undvika anslutningsproblem kontrollerar du att nätverkets brandvägg tillåter port 5432. Azure Database for PostgreSQL-servrar använder den porten.
Lista serverbaserade brandväggsregler
Om du vill visa en lista över befintliga brandväggsregler för servern kör du kommandot az postgres server firewall-rule list .
# List firewall rules for the server
echo "List of server-based firewall rules for $server"
az postgres server firewall-rule list --resource-group $resourceGroup --server-name $server
# You may use the switch `--output table` for a more readable table format as the output.
Utdata visar brandväggsreglerna, om några, som standard i JSON-format. Du kan använda växeln --output table
för ett mer läsbart tabellformat som utdata.
Hämta anslutningsinformationen
Om du vill ansluta till servern anger du värdinformation och autentiseringsuppgifter för åtkomst.
az postgres server show --resource-group $resourceGroup --name $server
Anteckna värdena administratorLogin och fullyQualifiedDomainName .
Anslut till Azure Database for PostgreSQL-servern med hjälp av psql
Psql-klienten är ett populärt val för att ansluta till PostgreSQL-servrar. Du kan ansluta till servern med hjälp psql
av Azure Cloud Shell. Du kan också använda psql
i din lokala miljö om du har den tillgänglig. En tom databas, postgres, skapas automatiskt med en ny PostgreSQL-server. Du kan använda databasen för att ansluta psql
till , som du ser i följande kod.
psql --host=<server_name>.postgres.database.azure.com --port=5432 --username=<admin_user>@<server_name> --dbname=postgres
Dricks
Om du föredrar att använda en URL-sökväg för att ansluta till Postgres kodar URL:en @-inloggningen användarnamnet med %40
. Till exempel skulle anslutningssträng för psql vara:
psql postgresql://<admin_user>%40<server_name>@<server_name>.postgres.database.azure.com:5432/postgres
Rensa resurser
Använd följande kommando för att ta bort resursgruppen och alla resurser som är associerade med den med kommandot az group delete – såvida du inte har ett pågående behov av dessa resurser. Vissa av dessa resurser kan ta ett tag att skapa och ta bort.
az group delete --name $resourceGroup