Una copia de seguridad, respaldo o backup (su término en inglés) de una base de datos, es una copia original de la misma que realizamos con el fin de disponer de un medio para recuperar su información en caso de pérdida.
Los backup’s son útiles en caso de que se haya producido un borrado involuntario, corrupción de los datos, virus, etc… o también cuando deseamos enviar la información que hemos creado para que otra persona trabaje con ella o la visualice.
En el siguiente ejercicio vamos a enseñarte cómo crear una copia de seguridad (backup) de una base de datos espacial PostGIS, con pgAdmin, proceso que, como comprobarás, es muy sencillo:
1) Nos conectamos al servidor y desplegamos las bases de datos.
Seleccionamos la base de datos sobre la que queremos hacer la copia de seguridad y hacemos clic con el botón derecho del ratón sobre ella. Seleccionamos la opción Backup…
En la ventana Backup (Database: bbdd), en la pestaña General, indicamos los siguientes parámetros:
- Filename: Otorgamos un nombre para el backup e indica la ruta en la que deseas
guardarlo. Seleccionamos el formato backup como extensión del archivo de la copia de seguridad.
- Format: Custom (por defecto).
- Encoding: Seleccionamos la codificación UTF8.
- Rolename: postgres. (PostgreSQL gestiona permisos de acceso a la base de datos usando el concepto roles. En nuestro caso, los privilegios del usuario postgres).
La pestaña Dump Options ofrece una serie de opciones para añadir o eliminar en el backup, dejamos las opciones marcadas por defecto.
4) Hacemos clic en el botón Backup y tras unos segundos se nos informará del proceso, así como de la finalización de éste mediante un mensaje emergente:
Accedemos al directorio de salida y observamos que se haya creado el archivo con extensión backup.
Restaurar backup con pgAdmin
Una vez que tenemos la copia de seguridad de PostGIS creada, vamos a ver cómo restaurar la base de datos objeto del backup, es decir, como restaurar una copia de seguridad de una base de datos con pgAdmin.
A este proceso se le denomina Restore y, para llevarlo a cabo, es necesaria la existencia de una base de datos, no puede crearse de forma automática con el archivo backup.
Abrimos pgAdmin, nos conectamos al servidor y creamos una nueva base de datos con el nombre que queramos (en nuestro caso duero_restore) e indicamos que el propietario de la misma es el usuario postgres.
Una vez creada la base de datos, nos situamos sobre ella y hacemos clic con el botón secundario del ratón. Seleccionamos la opción Restore…
En el cuadro de diálogo Restore (database: duero_restore) indicamos los siguientes
parámetros:
- Format: Custom o tar (recuerda que el formato del backup era Custom).
- Filename: Seleccionamos el backup generado en el ejercicio anterior:
- Rolename: Indicamos postgres (propietario de la base de datos que generó el backup).
Haz clic en el botón Restore para comenzar la restauración de la base de datos. Una vez finalice el proceso aparecerá un mensaje emergente con el resultado del mismo:
Desplegamos la base de datos duero_restore y observamos que la información procedente del backup se ha añadido correctamente a la base de datos:
Este es uno de los muchos temas que te enseñamos en nuestro curso online de bases de datos espaciales PostGIS,
Licenciado en Geografía. Máster en Sistemas de Información Geográfica. Consultor GIS desde el año 2004. En MappingGIS desde el año 2012 para ayudarte a impulsar tu perfil GIS y diferenciarte de la competencia. Echa un vistazo a todos nuestros cursos de SIG online.
Buenas! Si el backup se hace en una versión de postgis y se restaura en otra versión habrá algún problema con el funcionamiento?
Hola! Si el backup se realiza desde una versión antigua a una más moderna no habrá problema. El problema puede surgir si hacemos una copia de una versión moderna de PostgreSQL y queremos restaurarla en una versión muy anterior que no dispone de las mismas funcionalidades. Saludos!
Gracias por la respuesta,
He visto en otro blog vuestro esta separación de funciones y me lo estaba imaginando.
Gracias por el articulo.
Tengo una duda sobre PostgreSQl y postgis. En un servidor de empresa hemos instalado el Postgresql 12 y postgis 3.0. Cuando creao una BD con extension postgis en schema public aparecen solo 683 funciones. Me extraña por que en un ordenador propio tengo instalado la versión 2.5.2 y schema public viene con 1215 funciones. A que se debe esta diferencia? no se ha instalado correctamente postgis? se han compilado funciones?
Hola Carlos, esta nueva versión ha separado la parte vectorial de la ráster, por lo que las funciones ráster no vienen instaladas por defecto, además se ha depreciado otras funciones. En nuestras instalaciones contamos con el mismo número de funciones por lo que la instalación se ha realizado correctamente. Saludos!