PostgreSQL 9.1 adminpack install

12

en todas partes veo guías para postgre, parece estar en la versión 8.4. En ese caso la instrucción es:

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

esa ubicación no existe en el directorio 9.1 aparentemente.

¿Alguien puede indicarme cómo hacerlo funcionar (necesario para pgadmin)?

Robert
fuente

Respuestas:

17

el paquete de administración se puede encontrar en /usr/share/postgresql/9.1/extension

Instalar

sudo -u postgres psql

CREATE EXTENSION adminpack;

También para ver una lista de extensiones instaladas select * from pg_extension;

Damien
fuente
esto era más o menos eso. Intenté lograr esto con el usuario que era el propietario de la base de datos cuando, de hecho, parece que el usuario predeterminado, el que tiene estado de superusuario, tenía que hacerlo.
Robert
9

La respuesta anterior funciona muy bien. Solo debe recordar que debe hacer esto para cada base de datos, ya que las extensiones se instalan por base de datos. Las instrucciones anteriores instalan las extensiones en la base de datos nombrada postgres. Para instalarlo en su base de datos, simplemente cambie a su base de datos:

\c yourdb y repita el proceso: CREATE EXTENSION adminpack en Ubuntu el paquete de administración está en el paquete postgresql-contrib.

Maddin
fuente
1

Primero, si no has instalado contrib:

sudo apt-get install postgresql-contrib

Para iterar sobre varias bases de datos:

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

Como un revestimiento (ish):

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
msanford
fuente