Jak zaimportować Moduły lub zainstalować rozszerzenia w PostgreSQL 9.1+?

Po pierwsze, jeśli nie używasz wersji 9.1+, proszę odnieść się do tego pytania .

Jak zainstalować rozszerzenie do PostgreSQL 9.1?

Author: Community, 2012-01-27

6 answers

Postgrseql 9.1 udostępnia nowe polecenie CREATE EXTENSION. Powinieneś użyć go do instalacji modułów.

Moduły dostarczone w wersji 9.1 można znaleźć tutaj.. The include,

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

Jeśli na przykład chcesz zainstalować earthdistance, po prostu użyj tego polecenia:

CREATE EXTENSION earthdistance;

Jeśli chcesz zainstalować rozszerzenie z myślnikiem w nazwie, takie jak uuid-ossp, musisz załączyć nazwę rozszerzenia w podwójne cudzysłowy:

CREATE EXTENSION "uuid-ossp";
 88
Author: Evan Carroll,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-07-11 18:54:24

Chociaż odpowiedź Evana Carrola jest prawidłowa, należy pamiętać, że aby polecenie CREATE EXTENSION zadziałało, należy zainstalować pakiet PostgreSQL contrib.

W Ubuntu 12.04 byłoby tak:

sudo apt-get install postgresql-contrib

Restart serwera postgresql:

sudo /etc/init.d/postgresql restart

Wszystkie dostępne rozszerzenia znajdują się w:

/usr/share/postgresql/9.1/extension/

Teraz możesz uruchomić polecenie Utwórz rozszerzenie.

 50
Author: tani-rokk,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-04-03 09:47:20

Oprócz rozszerzeń, które są utrzymywane i dostarczane przez główny zespół programistów PostgreSQL, istnieją rozszerzenia dostępne od stron trzecich. W szczególności istnieje strona poświęcona temu celowi: http://www.pgxn.org/

 11
Author: kgrittn,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-04-04 22:21:46

Dla postgrersql10 rozwiązałem z

yum install postgresql10-contrib

Nie zapomnij aktywować rozszerzeń w postgresql.conf

shared_preload_libraries = 'pg_stat_statements'
pg_stat_statements.track = all

Potem oczywiście restart

systemctl restart postgresql-10.service 

Wszystkie potrzebne rozszerzenia znajdziesz tutaj

/usr/pgsql-10/share/extension/
 1
Author: matson kepson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-18 11:59:35

Do terminala psql umieść:

\i <path to contrib files>

W ubuntu zazwyczaj jest to /usr/share/postgreslq/<your pg version>/contrib/<contrib file>.sql

 0
Author: André Herculano,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-06-24 21:22:33

Jak pobrać i zainstalować jeśli masz SUSE. Jako przykład pobieram moduł tablefunc, aby móc korzystać z crosstab. Mam PostgreSQL 9.6.1.

Kliknij prawym przyciskiem myszy pulpit, terminal, typ:

sudo zypper in postgreql-contrib

Wprowadź dane uwierzytelniające, Kontynuuj wpisując:

y

Uruchom zapytanie (uruchomiłem swoje z pgAdminIII):

CREATE EXTENSION tablefunc;

Powinieneś teraz mieć funkcję crosstab.

Nie musiałem restartować.
 0
Author: mountainclimber,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-01-03 20:31:29