Installazione adminpack PostgreSQL 9.1


12

ovunque vedo le guide per Postgre, sembra essere nella versione 8.4. In tal caso l'istruzione è:

sudo -u postgres psql < /usr/share/postgresql/8.4/contrib/adminpack.sql

quella posizione apparentemente non esiste nella directory 9.1.

Qualcuno può indicarmi come farlo funzionare (necessario per pgadmin)?

Risposte:


17

L'Admin Pack è disponibile in /usr/share/postgresql/9.1/extension

Installare

sudo -u postgres psql

CREATE EXTENSION adminpack;

Anche per visualizzare un elenco di estensioni installate select * from pg_extension;


questo era più o meno. Stavo tentando di ottenere questo risultato con l'utente che era il proprietario del database quando in effetti sembra che l'utente predefinito, quello con stato di superutente, fosse tenuto a farlo.
Robert,

9

La risposta sopra funziona alla grande. Devi solo ricordare che devi farlo per ogni database, poiché le estensioni sono installate per database. Le istruzioni sopra installano le estensioni nel database denominato postgres. Per installarlo nel tuo database basta passare al tuo database:

\c yourdb e ripeti il ​​processo: CREATE EXTENSION adminpack su Ubuntu il pacchetto admin è nel pacchetto postgresql-contrib.


1

Innanzitutto, se non hai installato contrib:

sudo apt-get install postgresql-contrib

Per scorrere su più database:

sudo su postgres;
for db in $(psql -c "SELECT datname FROM pg_database WHERE datistemplate = false;" | sed '1,2d' | head -n -2 | grep -v '^ postgres$'); do
  echo "Adding adminpack to ${db}"
  psql -c "CREATE EXTENSION adminpack;" ${db};
done

Come one (ish) -liner:

sudo su postgres;
for db in $(psql -c "SELECT datname FROM pg_database WHERE datistemplate = false;" | sed '1,2d' | head -n -2 | grep -v '^ postgres$'); do psql -c "CREATE EXTENSION adminpack;" ${db}; done
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.