37 votos

¿Por qué la instalación de PostGIS no crea una plantilla_postgis?

He seguido esta ruta para la instalación de PostgreSQL y PostGIS:

Ahora cuando lanzo pgAdmin y trato de crear una nueva base de datos PostGIS, no hay template_postgis para usar en Template.


He intentado ir por otro camino, que es descargar el paquete PostgreSQL directamente desde PostgreSQL. Esto instala el servidor y permite utilizar el StackBuilder para descargar e instalar PostGIS. Esto no soluciona mi problema.

32voto

tobes Puntos 19

Puede crear fácilmente la plantilla si no está allí automáticamente. Aquí hay una descripción para ubuntu: http://obsessivecoder.com/2010/02/01/installing-postgresql-8-4-postgis-1-4-1-and-pgrouting-1-0-3-on-ubuntu-9-10-karmic-koala/

Esta es la parte esencial:

sudo su postgres
createdb template_postgis
createlang plpgsql template_postgis
psql -d template_postgis -f /usr/share/postgresql/8.4/contrib/postgis.sql
psql -d template_postgis -f /usr/share/postgresql/8.4/contrib/spatial_ref_sys.sql

En Precise Pangolin:

sudo su postgres
createdb template_postgis
psql -d template_postgis -f /usr/share/postgresql/9.1/contrib/postgis-1.5/postgis.sql
psql -d template_postgis -f /usr/share/postgresql/9.1/contrib/postgis-1.5/spatial_ref_sys.sql

30voto

Steven Parkes Puntos 625

A partir de la versión 2 Postgis se habilita mediante el sistema de extensión. Para habilitar espacialmente una base de datos, ingrese a su base de datos y luego:

 CREATE EXTENSION postgis;
 CREATE EXTENSION postgis_topology;

fuente: http://postgis.net/docs/postgis_installation.html

Nota: Sólo SUPERUSERS Los roles tienen la capacidad de crear EXTENSIONS

6voto

wusher Puntos 4262

Tuve problemas similares y terminé instalando el paquete que se encuentra en:

entreprisedb.com

puede seleccionar la instalación de postgis durante la fase de instalación o llamar al "Application Stack Builder" más tarde. Si la instalación no funciona, seleccione otra carpeta para descargar el instalador de postgis (que se llamará algo así como edb_postgis_1_5_pg91.app.zip ). Descomprima el zip e instale. Si no funciona, puede reiniciar e intentar de nuevo. En pgAdmin III debería aparecer template_postgis.

3voto

La pregunta puede ser obsoleta pero me encontré con el mismo error en OS X Lion. Quizás mi respuesta pueda ayudar a otro usuario.

La instalación por defecto de PostGIS con "stack builder" fallará. Pero después del primer paso de instalación, puede elegir la carpeta de descarga para PostGIS. Sólo tienes que descargarla en tu escritorio y descomprimirla a mano. Haciendo doble clic en el archivo, se instalará correctamente. El postgis_template está ahora disponible en el pgAdmin.

1voto

Brent Newey Puntos 2632

Según la documentación de PostGIS, sólo

Algunas distribuciones empaquetadas de PostGIS ... cargar las funciones de PostGIS en una base de datos de plantillas llamada template_postgis.

Por lo tanto, no todas las distribuciones vienen con template_postgis .

Como se ha dicho en las respuestas existentes, en PostGIS 2.x, es fácil crear o personalizar la plantilla usted mismo creando una base de datos regular llamada template_postgis como superusuario, y luego crear las extensiones necesarias y opcionales (como pgRouting). Según la documentación de PostGIS:

sudo su postgres
createdb template_postgis

psql -d template_postgis -c "CREATE EXTENSION postgis;"
psql -d template_postgis -c "CREATE EXTENSION postgis_topology;"

-- if you built with sfcgal support --
psql -d template_postgis -c "CREATE EXTENSION postgis_sfcgal;"

Además, puede marcar esta base de datos recién creada como una base de datos de plantilla estableciendo la opción datistemplate bandera en la tabla del sistema pg_database a ture .

psql -d template_postgis -c "UPDATE pg_database SET datistemplate = 'true' WHERE datname = 'template_postgis';"

Esto evitará, por ejemplo, que la base de datos de plantillas sea eliminada o alterada accidentalmente por otros usuarios o por usted mismo. (Tendrás que poner el indicador en falso si quieres hacer cambios en la plantilla).

Entonces puedes crear una base de datos espacial basada en lo que pongas en la plantilla:

createdb -T template_postgis my_spatial_db

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X