Gérer les extensions PostgreSQL dans Azure Database pour PostgreSQL - Serveur flexible
S’APPLIQUE À : Azure Database pour PostgreSQL : serveur flexible
Le serveur flexible Azure Database pour PostgreSQL vous permet d'étendre les fonctionnalités de votre base de données à l’aide d’extensions. Les extensions regroupent plusieurs objets SQL associés au sein d’un package qui peut être chargé ou supprimé de votre base de données à l’aide d’une commande. Une fois chargées dans la base de données, les extensions fonctionnent comme des fonctionnalités intégrées.
Autoriser les extensions
Avant d’installer des extensions dans le serveur flexible Azure Database pour PostgreSQL, vous devez autoriser ces extensions à être répertoriées pour utilisation.
À l’aide du Portail Azure :
Sélectionnez votre instance de serveur flexible Azure Database pour PostgreSQL.
Dans le menu des ressources, sous la section Paramètres, sélectionnez Paramètres du serveur.
Sélectionnez les extensions que vous souhaitez autoriser, parmi celles disponibles dans le paramètre
azure.extensions
, puis sélectionnez Enregistrer.
Charger les bibliothèques
shared_preload_libraries
est un paramètre de configuration de serveur qui détermine les bibliothèques à charger lors du démarrage du serveur flexible Azure Database pour PostgreSQL. Toutes les bibliothèques qui utilisent de la mémoire partagée doivent être chargées via ce paramètre. Si votre extension doit être ajoutée aux bibliothèques de préchargement partagées, effectuez ces étapes :
À l’aide du Portail Azure :
Sélectionnez votre instance de serveur flexible Azure Database pour PostgreSQL.
Dans le menu des ressources, sous la section Paramètres, sélectionnez Paramètres du serveur.
Incluez les bibliothèques que vous souhaitez ajouter à la valeur de
shared_preload_libraries
, puis sélectionnez Enregistrer.shared_preload_libraries
étant un paramètre de serveur statique, il nécessite un redémarrage du serveur afin que les modifications prennent effet.
Créer des extensions
Une fois qu’une extension est autorisée et, si l’extension l’exige, est également ajoutée à shared_load_libraries
, elle peut être créée ou installée dans chaque base de données sur laquelle elle doit être utilisée.
Pour créer une extension, un utilisateur doit être membre du rôle
azure_pg_admin
.Exécutez la commande CREATE EXTENSION pour créer ou installer une extension particulière. Cette commande charge les objets empaquetés dans votre base de données.
Remarque
Les extensions tierces proposées dans le serveur flexible Azure Database pour PostgreSQL disposent d’un code sous licence open source. Nous n’offrons aucune extension ou aucune version d’extension tierce avec des modèles de gestion des licences Premium ou propriétaires.
L’instance de serveur flexible Azure Database pour PostgreSQL prend en charge un sous-ensemble d’extensions PostgreSQL clés, comme indiqué dans extensions prises en charge par nom ou dans extensions prises en charge par version de PostgreSQL. Ces informations sont également disponibles en exécutant SHOW azure.extensions;
. Les extensions non incluses dans ces listes ne sont pas prises en charge sur serveur flexible Azure Database pour PostgreSQL. Vous ne pouvez ni créer ni charger vos propres extensions dans un serveur flexible Azure Database pour PostgreSQL.
Déposer des extensions
Pour déposer une extension, veillez à l’inscrire sur une liste d'autorisation.
Pour déposer une extension, les utilisateurs doivent êtres membres du rôle
azure_pg_admin
.Exécutez la commande DROP EXTENSION pour déposer ou désinstaller une extension particulière. Cette commande dépose les objets empaquetés dans l’extension depuis votre base de données.
Mettre à jour les extensions
Pour mettre à jour une extension installée vers la dernière version disponible prise en charge par Azure, utilisez la commande SQL suivante :
ALTER EXTENSION <extension_name> UPDATE;
Cette commande simplifie la gestion des extensions de base de données en permettant aux utilisateurs de passer manuellement à la dernière version approuvée par Azure, ce qui renforce la compatibilité et la sécurité.
Limites
Bien que la mise à jour des extensions soit simple, il existe certaines limitations :
Sélection d’une version spécifique : la commande ne prend pas en charge la mise à jour vers les versions intermédiaires d’une extension.
- Il met constamment à jour la dernière version disponible.
Rétrogradation : ne prend pas en charge la rétrogradation d’une extension vers une version précédente. Si une rétrogradation est nécessaire, elle peut nécessiter une assistance de support et dépend de la disponibilité de la version précédente.
Afficher les extensions installées
Pour lister les extensions actuellement installées sur votre base de données, utilisez la commande SQL suivante :
SELECT * FROM pg_extension;
Erreurs possibles
L’extension « %s » n’est pas autorisée pour les utilisateurs « azure_pg_admin » dans Azure Database pour PostgreSQL
Cette erreur se produit lorsque vous exécutez une commande CREATE EXTENSION
ou DROP EXTENSION
faisant référence à une extension qui n’est pas autorisée, ou à une extension qui n’est pas encore prise en charge sur l’instance d’Azure Database pour serveur flexible sur laquelle vous exécutez la commande.
Seuls les membres de « azure_pg_admin » sont autorisés à utiliser CREATE EXTENSION
Cette erreur se produit lorsque l’utilisateur qui exécute une commande CREATE EXTENSION
n’est pas membre du rôle azure_pg_admin
.
Seuls les membres de « azure_pg_admin » sont autorisés à utiliser DROP EXTENSION
Cette erreur se produit lorsque l’utilisateur qui exécute une commande DROP EXTENSION
n’est pas membre du rôle azure_pg_admin
.