Para hacer el respaldo de una base de datos postgres hacemos lo siguente:
Es importante indicar que el usuario postgres, o el usuario que deseen usar para estas tareas, debe tener todos los privilegios como super admin en el gestor. Desde la terminal de linux, primero nos logeamos con el usuario postgres:
# su postgres
luego ejecutamos el siguiente comando:
# pg_dump -U postgres -f respaldo_basededatos.sql db_basededatos
donde “db_basededatos” es la base de datos que queremos respaldar como ejemplo y “respaldo_basededatos.sql” es el archivo que se va a generar al ejecutar este comando. El nombre del archivo puede ser el que quieran.
o puede ser así también:
# pg_dump -U postgres db_basededatos > respaldo_basededatos.sql
- db_basededatos: es la base de datos a respaldar.
- respaldo_basededatos.sql: es el nombre del archivo de respaldo que se va a generar al ejecutar este comando, (el nombre del archivo queda al criterio del administrador.)
También podríamos realizar el respaldo en una ruta distinta a la que actualmente tenga el prompt de la consola, por ejemplo en una carpeta ubicada en /var/respaldos/:
# pg_dump -U postgres db_basededatos > /var/respaldos/respaldo_basededatos.sql
Si por alguna razón debemos hacer un respaldo de todas las bases de datos en un solo comando, hacemos los siguiente:
# pg_dumpall -U postgres > misbasesdedatos_all.sql
PASOS PARA REALIZAR UNA RESTAURACIÓN
Ahora para restaurar un respaldo de una base de datos postgres desde un archivo .sql primero debemos crear una nueva base de datos donde se va a restaurar el respaldo .sql. Desde la consola hacemos lo siguiente:
# su postgres
entramos al gestor de postgres con:
# psql
luego creamos la base de datos donde queremos restaurar el respaldo:
postgres=# create database mi_basededatos;
y nos salimos con:
postgres=# \q
Ahora ejecutamos lo siguiente:
# psql -h localhost -p 5432 -U postgres -f “respaldo_basededatos.sql” mi_basededatos
Si es un servidor remoto, podríamos ejecutarlo así, colocando la IP del servidor remoto postgres, con el argumento -h indicamos la IP o el nombre del servidor, sea local o remoto, el argumento -f indica que lo siguente en el comando entre las comillas, es el respaldo .sql que deseamos restaurar (“respaldo_basededatos.sql”), con el argumento -p indicamos el puerto del postgres y con -U indicamos el usuario, por ejemplo
# psql -h 172.16.36.5 -p 5432 -U postgres -f “respaldo_basededatos.sql” mi_basededatos
donde “mi_basededatos” es la base de datos donde se hará la restauración y “respaldo_basededatos.sql” es el archivo .sql correspondiente al respaldo que queremos restaurar.
Al ejecutar ese comando el sistema nos pedirá la clave del usuario postgres y listo!
Otra manera muy similar de realizar una restauración es como a continuación:
# psql -U postgres mi_basededatos < respaldo_basededatos.sql
No hay comentarios:
Publicar un comentario