Niedozwolone jest wielokrotne instalowanie rozszerzeń na bazę danych. Cytując instrukcję na CREATE EXTENSION
:
Pamiętaj, że samo rozszerzenie nie jest uważane za znajdujące się w żadnym schemacie:rozszerzenia mają niekwalifikowane nazwy, które muszą być unikalne w całej bazie danych. Ale obiekty należące do rozszerzenia mogą znajdować się w schematach.
Jeśli nie chcesz uwzględniać public
w Twojej search_path
, zainstaluj rozszerzenia „public” w dedykowanym schemacie (przykład:extensions
). Użyłbym jednego schematu dla wszystkich z nich, a nie osobnego schematu dla każdego rozszerzenia. Jest ich sporo.CREATE EXTENSION
oferuje opcję instalacji w istniejącym schemacie do wyboru:
CREATE EXTENSION hstore SCHEMA extensions;
I upewnij się, że schemat jest zawarty w search_path
użytkowników, którzy mogą chcieć z niego skorzystać.
- W jaki sposób search_path wpływa na rozwiązywanie identyfikatorów i „bieżący schemat”
Schemat, w którym znajduje się rozszerzenie, nie ma żadnego wpływu na przechowywanie danych.