Il n'est pas autorisé d'installer des extensions plusieurs fois par base de données. Citant le manuel sur CREATE EXTENSION
:
N'oubliez pas que l'extension elle-même n'est pas considérée comme faisant partie de n'importe quel schéma :les extensions ont des noms non qualifiés qui doivent être uniques à l'échelle de la base de données. Mais les objets appartenant à l'extension peuvent se trouver dans des schémas.
Si vous ne voulez pas inclure public
dans votre search_path
, installez les extensions "publiques" dans un schéma dédié (exemple :extensions
). J'utiliserais un schéma unique pour chacun d'eux, pas un schéma séparé pour chaque extension. Il y en a plusieurs.CREATE EXTENSION
offre une option d'installation sur un schéma existant de votre choix :
CREATE EXTENSION hstore SCHEMA extensions;
Et assurez-vous que le schéma est inclus dans le search_path
d'utilisateurs susceptibles de vouloir l'utiliser.
- Comment le search_path influence-t-il la résolution de l'identifiant et le "schéma actuel"
Le stockage des données n'est pas du tout affecté par le schéma dans lequel réside l'extension.