Crear una copia de seguridad de una base de datos postgre automáticamente

Páginas: 2 (478 palabras) Publicado: 30 de enero de 2014
- Como hacer una copia de una base de datos por comandos.

Solo tenemos que ejecutar la siguiente sentencia:

pg_dump -h localhost -U [username] -c [basededatos] > [carpeta/nombrefichero].sqlpor ejemplo:

pg_dump -h localhost -U postgres -c basedatos> basedatos.sql

Con este comando hemos hecho una copia de la base de datos, en la carpeta en la que nos encontramos en el momento dela ejecucion.

Tras la ejecucion nos pedira la contraseña del usuario que hayamos introducido despues de -U.

Con ello tendremos nuestra copia de la base de datos en unos segundos.


- Comocrear un script para la copia automatica de la bd con cron.

Primero crearemos un script y lo guardaremos donde queramos y lluego ejecutaremos el comando correspondiente:

#!/bin/bash
pg_dump -hlocalhost -U postgres basedatos-w -Fc > "basedatos.$(date +%d_%m_%y_%H:%M).sql"

pg_dump -> Comando para ahcer una copia de la BD que queramos
-h -> Seleccionamos el host (para poder usar .pgpassobligatorio)
-U -> Usuario que accedera a la BD, a continuacion ponemos la BD
-w -> No saltara el promp de la contraseña, en vez de ello ira directamente al fichero .pgpass
-Fc -> nos dara el formatocomprimido

Para poder automatizar el comando hemos de crear un archivo con la contraseña de la bd, para ello hemos de crear en la carpeta del usuario (en nuestro caso /root/) un archivo llamado.pgpass en el cual introduciremos:

hostname:port:database:username:password

en nuestro caso:

localhost:*:basedatos:postgres:******

una vez guardemos el archivo, hemos de darle los permisos 600para que postgres lea el archivo, con otros permisos no lo leera y fallara el copia, para ello introduciremos en la linea de comandos (en nuestro caso como root):

chmod 600 /root/.pgpass

Unavez tenemos el script guardado tenemos que automatizar su ejecucion, para ello usaremos cron.

Para acceder a cron introduciremos en la linea de comando lo siguiente:

crontab -e

Con este...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Crear una copia de base de datos oracle en otro servidor
  • Postgres. estado del desarrollo de la base de datos
  • Postgrees Base de Datos
  • GUIA PARA CREAR UNA CONEXIÓN CON UNA BASE DE DATOS POSTGRES UTILIZANDO JDBC.
  • Crear una base de datos en phpMyAdmin
  • COMO CREAR UNA BASE DE DATOS
  • Como crear una base de datos
  • Crear base de datos en mysql

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS