Comment importer des modules ou installer des extensions dans PostgreSQL 9.1+?

Tout d’abord, si vous n’utilisez pas 9.1+, veuillez vous référer à cette question .

Comment installer une extension sur PostgreSQL 9.1?

Postgrseql 9.1 prévoit une nouvelle commande CREATE EXTENSION . Vous devez l’utiliser pour installer des modules.

Les modules fournis en 9.1 peuvent être trouvés ici. . Les inclure,

 adminpack , auth_delay , auto_explain , btree_gin , btree_gist , chkpass , citext , cube , dblink , dict_int , dict_xsyn , dummy_seclabel , earthdistance , file_fdw , fuzzystrmatch , hstore , intagg , intarray , isn , lo , ltree , oid2name , pageinspect , passwordcheck , pg_archivecleanup , pgbench , pg_buffercache , pgcrypto , pg_freespacemap , pgrowlocks , pg_standby , pg_stat_statements , pgstattuple , pg_test_fsync , pg_trgm , pg_upgrade , seg , sepgsql , spi , sslinfo , tablefunc , test_parser , tsearch2 , unaccent , uuid-ossp , vacuumlo , xml2 

Si, par exemple, vous souhaitiez installer earthdistance , utilisez simplement cette commande:

 CREATE EXTENSION earthdistance; 

Si vous voulez installer une extension avec un trait d’union dans son nom, comme uuid-ossp , vous devez inclure le nom de l’extension entre guillemets:

 CREATE EXTENSION "uuid-ossp"; 
  • En savoir plus sur consortingb et les modules disponibles en 9.1 .
  • Lisez à propos de la nouvelle infrastructure d’extension et des commandes SQL pour la gérer ici Vous pouvez maintenant désinstaller plus facilement un module, voir DROP EXTENSION . Vous pouvez également obtenir une liste de postes et la prise en charge de base des numéros de version.

Bien que la réponse d’Evan Carrol soit correcte, veuillez noter que vous devez installer le package de consortingbution postgresql pour que la commande CREATE EXTENSION fonctionne.

Dans Ubuntu 12.04, cela irait comme ceci:

 sudo apt-get install postgresql-consortingb 

Redémarrez le serveur postgresql:

 sudo /etc/init.d/postgresql restart 

Toutes les extensions disponibles sont dans:

 /usr/share/postgresql/9.1/extension/ 

Vous pouvez maintenant exécuter la commande CREATE EXTENSION.

Outre les extensions qui sont gérées et fournies par l’équipe de développement principale de PostgreSQL, des extensions sont disponibles auprès de tiers. Il existe notamment un site dédié à cette fin: http://www.pgxn.org/

pour le postgrersql10 je l’ai résolu avec

 yum install postgresql10-consortingb 

N’oubliez pas d’activer les extensions dans postgresql.conf

 shared_preload_libraries = 'pg_stat_statements' pg_stat_statements.track = all 

puis bien sûr redémarrer

 systemctl restart postgresql-10.service 

toutes les extensions nécessaires que vous pouvez trouver ici

 /usr/pgsql-10/share/extension/ 

Dans le terminal psql mettre:

 \i  

dans ubuntu, il s’agit généralement de /usr/share/postgreslq//consortingb/.sql

Comment télécharger et installer si vous avez SUSE. Par exemple, je télécharge le module tablefunc pour pouvoir utiliser le tableau croisé. J’ai PostgreSQL 9.6.1.

clic droit sur le bureau, terminal, tapez:

 sudo zypper in postgreql-consortingb 

Entrez les informations d’identification, continuez en tapant:

 y 

Exécuter la requête (j’ai couru le mien de pgAdminIII):

 CREATE EXTENSION tablefunc; 

Vous devriez maintenant avoir la fonction de crosstab .

Je n’ai pas eu à redémarrer.