Freigeben über


Schnellstart: Erstellen einer Instanz von Azure Database for PostgreSQL – Flexibler Server

Azure Database for PostgreSQL ist ein verwalteter Dienst, mit dem Sie hoch verfügbare PostgreSQL-Datenbanken in der Cloud ausführen, verwalten und skalieren können.

In dieser Schnellstartanleitung erfahren Sie, wie Sie eine flexible Azure-Datenbank für PostgreSQL-Serverinstanz mithilfe der Azure-Portal-, Azure CLI- oder ARM-Vorlagen (Azure Resource Manager) erstellen.

Voraussetzungen

Bevor Sie beginnen, stellen Sie sicher, dass Sie folgendes haben:

  • Ein Azure-Abonnement. Wenn Sie kein Konto besitzen, erstellen Sie ein kostenloses Azure-Konto.
  • Geeignete Berechtigungen zum Erstellen von Ressourcen in Ihrem Abonnement.

Verstehen, was Sie erstellen

Eine flexible Serverinstanz von Azure Database für PostgreSQL umfasst:

  • Ein konfigurierter Satz von Compute- und Speicherressourcen.
  • Bereitstellung innerhalb einer Azure-Ressourcengruppe.
  • Eine postgres Datenbank, die standardmäßig erstellt wird.
  • Eine azure_maintenance Datenbank für verwaltete Dienstprozesse.
  • Eine azure_sys Datenbank für Abfragespeicher- und Indexoptimierungsfunktionen.

Hinweis

Verbindungen verwenden in der Regel Port 5432 oder Port 6432, wenn die Verbindung über den integrierten PgBouncer-Verbindungspooler hergestellt wird.

Erstellen eines Servers mithilfe des Azure-Portals

  1. Melden Sie sich beim Azure-Portal an.
  2. Wählen Sie " Ressource erstellen" in der oberen linken Ecke aus.
  3. Wählen Sie unter Kategorien die Option Datenbanken aus.
  4. Suchen und wählen Sie Azure Database for PostgreSQL Flexible Server aus.
  5. Wählen Sie "Erstellen" aus.

Grundeinstellungen konfigurieren

Projektdetails

Setting Vorgeschlagener Wert Hinweise
Subscription Ihr Abonnement Wählen Sie aus, wo die Ressource abgerechnet werden soll.
Ressourcengruppe myresourcegroup Erstellen einer neuen oder Auswählen einer vorhandenen

Server Details

Setting Vorgeschlagener Wert Description
Servername mydemoserver-pgsql Dieser muss global eindeutig sein. Domäne .postgres.database.azure.com wird automatisch hinzugefügt.
Region Region, die Ihnen am nächsten kommt Erwägen Sie Compliance, Datenresidenz, Kosten und die Nähe zu den Benutzern.
PostgreSQL-Version Neueste verfügbar Derzeit unterstützt: 18, 17, 16, 15, 14, 13, 12, 11
Workloadtyp Entwicklung Die Entwicklung verwendet Burstable SKUs. Die Produktion nutzt General Purpose oder Memory Optimized.
Verfügbarkeitszone Keine Präferenz Nützlich, um es mit Ihrer Anwendung bereitzustellen.

Hohe Verfügbarkeit

Option Service Level Agreement (SLA) Description
Disabled 99,9 % Einzelner Server ohne Standbymodus
Gleiche Zone 99.95% Standbymodus in derselben Verfügbarkeitszone
Zonenredundant 99,99 % Standbymodus in einer anderen Verfügbarkeitszone

Authentifizierung

Setting Description Recommended
Authentifizierungsmethode Authentifizieren von Benutzern - Nur die PostgreSQL-Authentifizierung (Schnellstart)
- Microsoft Entra-Authentifizierung (für die Produktion)
- Beide (für Flexibilität)
Administratorbenutzername adminuser - Muss 1-63 Zeichen lang sein
- Nur Zahlen und Buchstaben
- Kann nicht beginnen mit pg_
- System reservierte Namen können nicht verwendet werden
Passwort Komplexes Kennwort 8-128 Zeichen mit Großbuchstaben, Kleinbuchstaben, Zahlen und Sonderzeichen

Konfiguration von Rechen- und Speicherkapazitäten

Wählen Sie " Server konfigurieren" aus, um folgendes anzupassen:

Computeebene

Tarif Anwendungsfall Description
Burstfähig Entwicklung Für Arbeitslasten, die keine kontinuierliche vollständige CPU benötigen
Allgemeiner Zweck Produktion Die häufigsten Produktionsworkloads
Arbeitsspeicheroptimiert Workloads mit hohem Arbeitsspeicher Workloads, die ein hohes Arbeitsspeicher-zu-CPU-Verhältnis erfordern

Speichereinstellungen

Setting Kann später geändert werden Description
Speichertyp ❌ Nein Premium SSD oder Premium SSD v2
Speichergröße ✅ Ja (nur erhöhen) Verkleinern nach der Erstellung nicht möglich
Leistungsstufe ✅ Ja Steuert IOPS und Durchsatz
Automatische Speichervergrößerung ✅ Ja Autoexpand beim Nähern von Grenzwerten

Sicherungseinstellungen

Setting Kann später geändert werden Description
Backup-Aufbewahrungsfrist ✅ Ja 7-35 Tage
Sicherungsredundanz ❌ Nein Lokal redundant, zonenredundant oder georedundant
Georedundanz ❌ Nein Nur in gekoppelten Azure-Regionen verfügbar

Konfigurieren von Netzwerken

Wählen Sie Ihre Konnektivitätsmethode aus (kann nach der Erstellung nicht geändert werden):

Öffentlicher Zugriff (zugelassene IP-Adressen)

Stellen Sie mithilfe von Firewallregeln eine Verbindung über einen öffentlichen Endpunkt her.

Einstellungen:

Setting Description
Zulassen des öffentlichen Zugriffs Aktivieren des öffentlichen Zugriffs zum Konfigurieren von Firewallregeln
Zulassen von Azure-Diensten Zulassen von Verbindungen von allen Azure-Diensten
Hinzufügen der aktuellen Client-IP Hinzufügen Ihrer IP-Adresse zur Zulassungsliste

Privater Zugriff (Virtual Network Integration)

Stellen Sie eine Verbindung über einen privaten Endpunkt in einem virtuellen Netzwerk her. Weitere Informationen finden Sie unter "Network with private access for Azure Database for PostgreSQL".

Konfigurieren der Sicherheit

Setting Kann später geändert werden Options
Datenverschlüsselungsschlüssel ❌ Nein Vom Dienst verwaltet oder vom Kunden verwaltet

Hinzufügen von Ressourcentags (optional)

Organisieren Sie Ressourcen mit Name-Wert-Paaren:

Name Wert Zweck
Umwelt Entwicklung Identifizieren des Umgebungstyps
CostCenter IT-Dept Nachverfolgen von Kosten nach Abteilung
Besitzer admin@contoso.com Identifizieren der verantwortlichen Partei

Überprüfen und erstellen

  1. Klicken Sie auf Überprüfen + erstellen.
  2. Überprüfen Sie alle Konfigurationen.
  3. Wählen Sie Create aus, um die Bereitstellung zu starten.

Die Bereitstellung dauert in der Regel 5 bis 10 Minuten. Wählen Sie nach Abschluss Zur Ressource wechseln, um auf Ihren Server zuzugreifen.

Erstellen eines Servers mit Azure CLI

Voraussetzungen für CLI

Verwenden Sie für dieses Skript die Azure CLI lokal, da die Ausführung in Cloud Shell zu lange dauert.

Anmelden bei Azure

Verwenden Sie das folgende Skript, um sich mit einem bestimmten Abonnement anzumelden.

subscription="<subscriptionId>" # add subscription here

az account set -s $subscription # ...or use 'az login'

Weitere Informationen finden Sie unter Festlegen des aktiven Abonnements oder unter Interaktives Anmelden.

Wenn Sie Azure Cloud Shell verwenden, sind Sie bereits angemeldet.

Erstellen eines Servers mit CLI

Erstellen Sie einen Server mit einem Befehl:

az postgres flexible-server create \
  --resource-group myresourcegroup \
  --name mydemoserver-pgsql \
  --location eastus \
  --admin-user myadmin \
  --admin-password <password> \
  --sku-name Standard_D4ds_v5 \
  --tier GeneralPurpose \
  --public-access 0.0.0.0 \
  --storage-size 128 \
  --tags "Environment=Development"

CLI-Parameterreferenz

Parameter Description Example
--resource-group Ressourcengruppenname myresourcegroup
--name Global eindeutiger Servername mydemoserver-pgsql
--location Azure region eastus
--admin-user Administratorbenutzername myadmin
--admin-password Administratorkennwort IhrPassword123!
--sku-name Berechnen der SKU Standard_D4ds_v5
--tier Computeebene Burst-fähig, Allgemeine Nutzung, Speicheroptimiert
--storage-size Speicher in GB 128
--public-access Zulässige IP-Adressen 0.0.0.0 (alle Azure-Dienste), IP-Adresse oder IP-Bereich
--version PostgreSQL-Version 16
--high-availability HA-Modus Deaktiviert, GleicheZone, Zonenredundant
--backup-retention Aufbewahrungstage für die Datensicherung 7-35

Erweitertes CLI-Beispiel

Erstellen Sie einen zonenredundanten hochverfügbaren Server.

az postgres flexible-server create \
  --resource-group myresourcegroup \
  --name mydemoserver-pgsql-ha \
  --location eastus \
  --admin-user myadmin \
  --admin-password <password> \
  --sku-name Standard_D4ds_v5 \
  --tier GeneralPurpose \
  --storage-size 256 \
  --storage-type PremiumV2_LRS \
  --high-availability ZoneRedundant \
  --zone 1 \
  --standby-zone 2 \
  --backup-retention 14 \
  --public-access 0.0.0.0

Erstellen eines Servers mit ARM-Vorlage

ARM-Vorlagenübersicht

Azure Resource Manager (ARM)-Vorlagen ermöglichen Ihnen die Definition der Infrastruktur als Code. Verwenden Sie Vorlagen für wiederholbare Bereitstellungen.

Minimale ARM-Vorlage

Diese Datei speichern unter postgres-server-template.json:

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "serverName": {
      "type": "string",
      "metadata": {
        "description": "Server name must be globally unique"
      }
    },
    "administratorLogin": {
      "type": "string",
      "minLength": 1,
      "maxLength": 63,
      "metadata": {
        "description": "Administrator username"
      }
    },
    "administratorLoginPassword": {
      "type": "securestring",
      "minLength": 8,
      "metadata": {
        "description": "Administrator password"
      }
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]",
      "metadata": {
        "description": "Server location"
      }
    }
  },
  "resources": [
    {
      "type": "Microsoft.DBforPostgreSQL/flexibleServers",
      "apiVersion": "2024-08-01",
      "name": "[parameters('serverName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "Standard_D4ds_v5",
        "tier": "GeneralPurpose"
      },
      "properties": {
        "administratorLogin": "[parameters('administratorLogin')]",
        "administratorLoginPassword": "[parameters('administratorLoginPassword')]",
        "version": "16",
        "storage": {
          "storageSizeGB": 128,
          "type": "Premium_LRS",
          "autoGrow": "Enabled"
        },
        "backup": {
          "backupRetentionDays": 7,
          "geoRedundantBackup": "Disabled"
        },
        "network": {
          "publicNetworkAccess": "Enabled"
        },
        "highAvailability": {
          "mode": "Disabled"
        }
      }
    }
  ],
  "outputs": {
    "serverFQDN": {
      "type": "string",
      "value": "[reference(parameters('serverName')).fullyQualifiedDomainName]"
    }
  }
}

Bereitstellen der ARM-Vorlage

az group create --name myresourcegroup --location eastus

az deployment group create \
  --resource-group myresourcegroup \
  --template-file postgres-server-template.json \
  --parameters \
    serverName=mydemoserver-pgsql \
    administratorLogin=myadmin \
    administratorLoginPassword=<password>

Abrufen von Verbindungsinformationen

Rufen Sie nach dem Erstellen des Servers Verbindungsdetails ab:

Verwenden des Azure-Portals

  1. Wechseln Sie zum Server im Azure-Portal.
  2. Überprüfen Sie die Übersichtsseite.
  3. Kopieren Sie diese Werte:
    • Servername (Endpunkt): mydemoserver-pgsql.postgres.database.azure.com
    • Administratoranmeldung: myadmin

Mithilfe der Azure CLI

az postgres flexible-server show \
  --resource-group myresourcegroup \
  --name mydemoserver-pgsql \
  --query "{serverName:fullyQualifiedDomainName, adminUser:administratorLogin}" \
  --output table

Herstellen einer Verbindung mit psql

Installieren Sie psql.

Wenn Sie keine PostgreSQL-Clienttools haben, laden Sie PostgreSQL für Ihre Plattform herunter.

Herstellen einer Verbindung mit Ihrem Server

psql "host=mydemoserver-pgsql.postgres.database.azure.com port=5432 dbname=postgres user=myadmin sslmode=require"

Wenn Sie dazu aufgefordert werden, geben Sie das Administratorkennwort ein, das Sie während der Servererstellung festgelegt haben.

Format der Verbindungszeichenfolge

host=<server-name>.postgres.database.azure.com port=5432 dbname=<database-name> user=<admin-user> password=<password> sslmode=require

Überprüfen der Verbindung

Nach der Verbindung sollte Folgendes angezeigt werden:

psql (14.13, server 16.4)
WARNING: psql major version 14, server major version 16.
         Some psql features might not work.
SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, bits: 256, compression: off)
Type "help" for help.

postgres=>

Erstellen einer Datenbank

CREATE DATABASE user_database;
\c user_database
\q

Problembehandlung bei Verbindungsproblemen

Firewall blockiert Verbindung

Wenn Folgendes angezeigt wird:

connection to server at "mydemoserver-pgsql.postgres.database.azure.com" (###.###.###.###), port 5432 failed: Connection timed out

Lösung: Fügen Sie Ihre IP-Adresse zu den Firewallregeln hinzu:

az postgres flexible-server firewall-rule create \
  --resource-group myresourcegroup \
  --name mydemoserver-pgsql \
  --rule-name AllowMyIP \
  --start-ip-address <your-ip> \
  --end-ip-address <your-ip>

SSL erforderlich, aber nicht konfiguriert

Stellen Sie sicher, dass ihre Verbindungszeichenfolge einschließt sslmode=require.

Bereinigen von Ressourcen

Wenn Sie den Schnellstart abgeschlossen haben, löschen Sie die Ressourcen, um Gebühren zu vermeiden.

Löschen der gesamten Ressourcengruppe

az group delete --name myresourcegroup --yes

Nur den Server löschen

az postgres flexible-server delete \
  --resource-group myresourcegroup \
  --name mydemoserver-pgsql \
  --yes