Amazon RDS Postgresql ajoutant de nouvelles extensions

9

Je souhaite télécharger jsonbx sur une instance RDS. Fonctionnalités RDS PostgreSQL prises en charge affiche uniquement les fonctionnalités intégrées. Est-ce à dire qu'il n'y a aucun moyen d'installer une extension de RDS qui n'est pas dans la matrice des fonctionnalités ? Y a-t-il un moyen de contourner cela?

Thellimist
la source
Vous ne pouvez pas ajouter vos propres extensions à RDS, du moins pas celles qui nécessitent des droits de superutilisateur (comme n'importe quoi avec du code C). C'est l'un des inconvénients que vous acceptez en échange d'une gestion pratique.
Craig Ringer
@CraigRinger Puis-je ajouter les fonctionnalités des extensions en tant que fonctions?
Thellimist

Réponses:

16

Vous ne pouvez pas ajouter vos propres extensions à RDS, du moins pas celles qui nécessitent des droits de superutilisateur (comme n'importe quoi avec du code C). C'est l'un des inconvénients que vous acceptez en échange d'une gestion pratique.

Si l'extension ne comprend que des fonctions plpgsql et sql simples, vous pouvez ajouter les fonctions manuellement. Cela n'est pas possible avec tout ce qui nécessite des privilèges de superutilisateur, y compris toute extension avec du code C.

jsonbx ajoute des fonctions et des opérateurs. La source contient du code C , il n'y a donc aucun moyen de le charger sur RDS. Déjà. Du tout. RDS ne vous permet pas d'exécuter quoi que ce soit qui pourrait vous donner un accès superutilisateur ou un accès à la machine virtuelle sous-jacente sur laquelle PostgreSQL s'exécute, ni ne fournit un moyen de télécharger des extensions même si cela vous permettrait de les charger.

Vous devrez passer à l'exécution d'un serveur PostgreSQL autonome (par exemple, sur EC2), persuader le support d'Amazon de rendre l'extension disponible dans le cadre de leur ensemble d'extensions pris en charge, ou vous en passer.

Craig Ringer
la source
10

Actuellement, il existe quelques extensions disponibles dans Amazon RDS - détaillées dans le chapitre «Fonctionnalités du moteur de base de données».

Vous pouvez exécuter la commande suivante pour obtenir la prise en charge des extensions disponibles:

SHOW rds.extensions;
3manuek
la source
1
Oh, il y avait en fait celui que je cherchais. Lucky me
DenLilleMand
@DenLilleMand Ils utilisent pour mettre à jour la liste souvent, vous pouvez donc actualiser de temps en temps pour voir s'il y a de nouvelles contributions ajoutées qui pourraient être pour votre intérêt.
3manuek