3 PostgreSQL y PostGIS

PostgreSQL es un sistema de gestión de SGBD relacional de código abierto. PostGIS es una extensión de PostgreSQL que permite definir datos y consultas espaciales1. Mediante PostGIS podemos almacenar directamente capas vectoriales en PostgreSQL, también permite almacenar datos ráster pero transformándolos previamente mediante una utilidad (raster2pgsql) para obtener un archivo SQL. Mediante una extensión de PostGIS, llamada postgis_raster, también se pueden almacenar directamente capas ráster.

Antes de trabajar con QGIS o R, tenemos que crear una BD PostGIS que soporte tanto datos vectoriales como datos ráster. A continuación se explica cómo hacerlo, también cómo salvar la BD si, por ejemplo, queremos guardar nuestro trabajo para continuar en otro ordenador.

3.1 Crear una BD PostgreSQL con las extensiones postgis y postgis_raster

Para almacenar la información en PostGIS, en primer lugar, deberemos crear una BD y un esquema desde el administrador de PostgreSQL, pgAdmin 4.

Conectarse a PostgreSQL.

Figura 3.1: Conectarse a PostgreSQL.

Pulsando sobre la flecha a la izquierda de Servers, en la columna de la izquierda de la figura 3.1, se muestran los datos de los servidores disponibles y, si seguimos desplegando de la misma forma, las BD de cada servidor. Al conectarse a un servidor, solicita el usuario y la contraseña (salvo que se le haya indicado antes que la guarde).

Crear la BD.

Figura 3.2: Crear la BD.

Para crear una nueva BD, pulsamos sobre Create > Database… del menú contextual del apartado Databases (figura 3.2).

En la ventana que se abre, indicamos el nombre de la BD, se muestra el propietario de la BD, en este caso es el administrador cuyo usuario es postgres (no tenemos que cambiarlo) y pulsamos sobre el botón Save. Con esta operación tenemos una BD PostgreSQL.

Crear una extensión a la BD.

Figura 3.3: Crear una extensión a la BD.

Para tener una BD con soporte para información geográfica, debemos añadir una extensión PostGIS a la BD PostgreSQL que acabamos de crear. Esto lo hacemos desde el apartado Extensions, pulsando sobre Create > Extension… en el menú contextual (figura 3.4).

Añadir la extensión a la BD.

Figura 3.4: Añadir la extensión a la BD.

En la ventana de creación de extensiones, seleccionamos la extensión postgis y pulsamos sobre el botón Save (figura 3.4).

Para que la BD permita trabajar con datos ráster directamente, debemos añadir también la extensión postgis_raster (de la misma forma que acabamos de añadir la extensión postgis). Es decir, la BD ha de tener las extensiones postgis y postgis_raster, además del resto de extensiones que tenga.

3.2 Guardar en un archivo y restaurar una BD PostgreSQL

Si trabajamos con PostgreSQL en un ordenador y queremos llevar nuestro trabajo a otro, debemos hacer un Backup de la BD para guardar nuestro trabajo y después hacer Restore.

Backup y Restore.

Figura 3.5: Backup y Restore.

En el menú contextual de la BD (figura 3.5) encontramos las opciones para realizar estas operaciones.