5 votos

Copiar una tabla espacial de una base de datos PostGIS a otra base de datos PostGIS

Tengo dos bases de datos PostGIS en dos servidores diferentes. El primer servidor es PostGIS 2.0 y el segundo servidor es PostGIS 1.5.

En el PostGIS 2.0 tengo una tabla "lagos" con la columna de geometría MULTIPOLYGON. Mi tarea es copiar mi tabla de la base de datos PostGIS 2.0 en el primer servidor a una PostGIS 1.5 en el segundo servidor.

No puedo acceder a la primera base de datos a través de la conexión remota, y por lo tanto sólo puedo exportar la tabla exportándola a un archivo .sql.

¿Qué comando utilizo para exportar mi tabla "lagos" a un archivo .sql para garantizar que la información de la columna de geometría y el índice espacial se recreen correctamente en la segunda base de datos?

Ya he utilizado la herramienta shp2pgsql. ¿Existe una herramienta similar para la exportación de "PostGIS a PostGIS"?

12voto

Ignacio Vazquez-Abrams Puntos 30600

Yo recomendaría el uso de pg_dump y pg_restore que funcionan muy bien para exportar datos de una base de datos y luego restaurarlos a otra base de datos.

hay un buen tutorial aquí http://www.mkyong.com/database/backup-restore-database-in-postgresql-pg_dumppg_restore/

Pero simplemente querrá exportar usando un comando como

pg_dump -U username databasename > lakes.dump.gz

Puedes mejorar este comando comprimiéndolo si tus datos son bastante grandes utilizando el parámetro -Fc

Luego, para restaurar los datos en el segundo servidor, utilice un comando similar a este

pg_restore -U username -i -h localhost -p 5432 -d databasename lakes.dump.gz

El interruptor -i aquí es importante porque sus versiones de PostGIS son diferentes.

Espero que eso ayude

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