3 votos

¿Es posible importar funciones de PostGIS desde otra base de datos?

Al ver que no encuentro la pregunta formulada aquí antes, tengo la sensación de que estoy haciendo algo mal.

Sin embargo, este es mi problema: tengo una base de datos PostGIS con 525 funciones, y otra sin ninguna. ¿Hay alguna manera de importar las 525 funciones de una a la otra? ¿O debería haber utilizado la que tiene 525 funciones como plantilla?

Gracias

5voto

saxman Puntos 136

Lo que probablemente quiera hacer es añadir la funcionalidad de PostGIS a la base de datos existente. La que no tiene función probablemente no tiene el PostGIS en absoluto.

si tiene PostgreSQL 9.1+, puede ejecutar el siguiente comando en la base de datos que falta las funciones:

CREATE EXTENSION postgis;

Esto añadirá toda la funcionalidad de PostGIS a la base de datos existente.

Si está ejecutando una versión inferior de PostgreSQL, hay que realizar algunos pasos más para importar todas las funciones.

Me remito a la documentación oficial para esos pasos: http://postgis.net/docs/postgis_installation.html#create_new_db

Un copia/pega descarado por si el enlace muere:

Muchas de las funciones de PostGIS están escritas en el lenguaje de procedimiento PL/pgSQL de procedimiento PL/pgSQL. Como tal, el siguiente paso para crear una base de datos PostGIS es habilitar el lenguaje PL/pgSQL en su nueva base de datos. Esto se logra mediante el siguiente comando. Para PostgreSQL 8.4+, esto es generalmente ya está instalado

createlang plpgsql [yourdatabase]

Ahora cargue el objeto PostGIS y las definiciones de las funciones en su base de datos cargando el archivo de definiciones postgis.sql (ubicado en [prefijo]/compartir/contrib como se especificó durante el paso de configuración).

psql -d [yourdatabase] -f postgis.sql

Para obtener un conjunto completo de identificadores de definición de sistemas de coordenadas EPSG, también puede cargar el archivo de definiciones spatial_ref_sys.sql y rellenar la tabla spatial_ref_sys. Esto le permitirá realizar operaciones ST_Transform() sobre las geometrías.

psql -d [yourdatabase] -f spatial_ref_sys.sql

Si desea añadir comentarios a las funciones de PostGIS, el último paso es cargar el archivo postgis_comments.sql en su base de datos espacial. Los comentarios de comentarios pueden verse simplemente escribiendo \dd [nombre_de_la_función] desde una ventana de terminal psql.

psql -d [yourdatabase] -f postgis_comments.sql

Instalar el soporte de rasterización

psql -d [yourdatabase] -f rtpostgis.sql

Instalar los comentarios de soporte de rasterización. Esto proporcionará información de ayuda rápida para cada función raster usando psql o PgAdmin o cualquier otra herramienta que pueda mostrar los comentarios de las funciones

psql -d [yourdatabase] -f raster_comments.sql

Instalar soporte de topología

psql -d [yourdatabase] -f topology/topology.sql

Instalar comentarios de apoyo a la topología. Esto proporcionará información de ayuda rápida para cada función / tipo de topología utilizando psql o PgAdmin o cualquier otra herramienta de PostgreSQL que pueda mostrar los comentarios de las funciones

psql -d [yourdatabase] -f topology/topology_comments.sql

Si piensa restaurar una copia de seguridad antigua de versiones anteriores en esta nueva db, ejecute:

psql -d [yourdatabase] -f legacy.sql

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