Freigeben über


Verwenden von PostgreSQL-Erweiterungen in Ihrem PostgreSQL-Server mit Azure Arc-Unterstützung

PostgreSQL eignet sich am besten für die Verwendung mit Erweiterungen.

[!INCLUDE [azure-arc-data-preview](./includes/azure-arc-data-preview.md]

Unterstützte Erweiterungen

Die folgenden Erweiterungen werden standardmäßig in den Containern Ihres Azure Arc-fähigen PostgreSQL-Servers bereitgestellt, einige davon sind Standarderweiterungen contrib:

  • address_standardizer_data_us 3.3.1
  • adminpack 2.1
  • amcheck1.3
  • autoinc 1
  • bloom 1
  • btree_gin 1.3
  • btree_gist 1.6
  • citext 1.6
  • cube 1.5
  • dblink1.2.
  • dict_int 1
  • dict_xsyn 1
  • earthdistance 1.1
  • file_fdw 1
  • fuzzystrmatch 1.1
  • hstore 1.8
  • hypopg 1.3.1
  • insert_username 1
  • intagg 1.1
  • intarray 1.5
  • isn1.2.
  • lo 1.1
  • ltree1.2.
  • moddatetime 1
  • old_snapshot 1
  • orafce 4
  • pageinspect 1.9
  • pg_buffercache 1.3
  • pg_cron 1.4-1
  • pg_freespacemap1.2.
  • pg_partman 4.7.1
  • pg_prewarm1.2.
  • pg_repack 1.4.8
  • pg_stat_statements 1.9
  • pg_surgery 1
  • pg_trgm 1.6
  • pg_visibility1.2.
  • pgaudit 1.7
  • pgcrypto 1.3
  • pglogical 2.4.2
  • pglogical_origin 1.0.0
  • pgrouting 3.4.1
  • pgrowlocks1.2.
  • pgstattuple 1.5
  • plpgsql 1
  • postgis 3.3.1
  • postgis_raster 3.3.1
  • postgis_tiger_geocoder 3.3.1
  • postgis_topology 3.3.1
  • postgres_fdw 1.1
  • refint 1
  • seg 1.4
  • sslinfo1.2.
  • tablefunc 1
  • tcn 1
  • timescaledb 2.8.1
  • tsm_system_rows 1
  • tsm_system_time 1
  • unaccent 1.1

Wenn sich diese Liste im Laufe der Zeit verändert, werden entsprechende Aktualisierungen veröffentlicht.

Aktivieren von Erweiterungen auf Arc-fähigen PostgreSQL-Server

Sie können einen Arc-fähigen PostgreSQL-Server mit einer der unterstützten Erweiterungen erstellen, indem Sie eine durch Trennzeichen getrennte Liste von Erweiterungen an den --extensions Parameter des Befehls create übergeben.

az postgres server-arc create -n <name> --k8s-namespace <namespace> --extensions "pgaudit,pg_partman" --use-k8s

HINWEIS: Aktivierte Erweiterungen werden der Konfiguration shared_preload_libraries hinzugefügt. Erweiterungen müssen in Ihrer Datenbank installiert werden, bevor Sie sie benutzen können. Zur Installation einer bestimmten Erweiterung führen Sie den Befehl CREATE EXTENSION aus. Dieser Befehl lädt die Objektpakete in Ihre Datenbank.

Stellen Sie beispielsweise eine Verbindung mit Ihrer Datenbank her, und geben Sie den folgenden PostgreSQL-Befehl aus, um die Erweiterung „pgaudit“ zu installieren:

CREATE EXTENSION pgaudit;

Aktualisieren von Erweiterungen

Sie können Erweiterungen von einem vorhandenen Arc-fähigen PostgreSQL-Server hinzufügen oder entfernen.

Sie können den kubectl-Beschreibungsbefehl ausführen, um die aktuelle Liste der aktivierten Erweiterungen abzurufen:

kubectl describe postgresqls <server-name> -n <namespace>

Wenn Erweiterungen aktiviert sind, enthält die Ausgabe einen Abschnitt wie folgt:

  config:
    postgreSqlExtensions: pgaudit,pg_partman

Überprüfen Sie, ob die Erweiterung nach dem Herstellen einer Verbindung mit der Datenbank installiert ist, indem Sie den folgenden PostgreSQL-Befehl ausführen:

select * from pg_extension;

Aktivieren Sie neue Erweiterungen, indem Sie sie an die vorhandene Liste anfügen oder Erweiterungen entfernen, indem Sie sie aus der vorhandenen Liste entfernen. Übergeben Sie die gewünschte Liste an den Updatebefehl. Wenn Sie z. B. pgcrypto hinzufügen und pg_partman aus dem Server im obigen Beispiel entfernen möchten:

az postgres server-arc update -n <name> --k8s-namespace <namespace> --extensions "pgaudit,pgrypto" --use-k8s

Sobald die Liste der zulässigen Erweiterungen aktualisiert wurde. Stellen Sie eine Verbindung mit der Datenbank her, und installieren Sie die neu hinzugefügte Erweiterung mit dem folgenden Befehl:

CREATE EXTENSION pgcrypto;

Wenn Sie auch eine Erweiterung aus einer vorhandenen Datenbank entfernen möchten, geben Sie den Befehl DROP EXTENSION aus:

DROP EXTENSION pg_partman;

Anzeigen der Liste der installierten Erweiterungen

Stellen Sie mit dem Clienttool Ihrer Wahl eine Verbindung mit Ihrer Datenbank her, und führen Sie die PostgreSQL-Standardabfrage aus:

select * from pg_extension;
  • Probieren Sie sie aus. Mit dem Azure Arc-Schnelleinstieg für Azure Kubernetes Service (AKS), AWS Elastic Kubernetes Service (EKS), Google Cloud Kubernetes Engine (GKE) oder auf einer Azure-VM können Sie schnell die ersten Schritte ausführen.