Skip site navigation (1) Skip section navigation (2)

Re: Problema con los Backups

From: alfredo guzman <freddam_17(at)yahoo(dot)es>
To: daniel(dot)ferrer(at)ctd(dot)com(dot)ar, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Problema con los Backups
Date: 2008-02-28 17:40:02
Message-ID: 136062.71188.qm@web25813.mail.ukl.yahoo.com (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
Daniel:

Gracias por el aporto, muy bueno tu script, el problema que tenia con el cron lo he solucionado utilizando at conjuntamente con el cron, ahora ya se realizan los respaldos como los queria

esto es lo que pongo en el crontab
25 2    * * 1-5 root bash /scripts/atbacman.bash

script atbacman.bash
=============
#!/bin/bash
fecha=`date +%Y%m%d`
hor=`date +%H`
min=`date +%M`

# Aqui se establece un minuto mas para la ejecucion del primer respaldo =P
min=$(($min+1)) ; hora="$hor:$min"
at -f /scripts/bacbasedatos1.bash $hora
min=$(($min+10)) ; hora="$hor:$min"
at -f /scripts/bacbasedatos2.bash $hora
min=$(($min+5)) ; hora="$hor:$min"
at -f /scripts/bacbasedatos3.bash $hora

utilizo el cron para programarlo de lunes a viernes y tambien porque el servidor se reinicia de madrugada y creo que con at en un reinicio se pierde las tareas programadas no?

y con el at ejecuto los respaldos, por alguna razon que aun no identifico, al ejecutar los script de los respaldos desde el cron se me pierde la ejecucion como ya les habia comentado al inicio de este tema, pero con esto ya se estan respaldando y restaurando en un servidor remoto sin problemas aparantes.

Gracias a todos por sus aportes.

lo que he notado al utilizar este metodo es que cuando programo en el cron de 0 a 9 minutos el date me regresa 00,01,02....09 lo cual al sumarle 1 da cualquier cosa menos el minuto siguiente jeje asi que trato de no programar nada que utilice esta forma en esos minutos.

Tambien no he considerado utilizar esta forma cuando se que sumara mas del min 59 ya que deberia utilizar un codigo para que me salte a la hora siguiente y el minuto correspondiente, pero por ahora va bien, =P.



----- Mensaje original ----
De: Daniel Ferrer <daniel(dot)ferrer(at)ctd(dot)com(dot)ar>
Para: pgsql-es-ayuda(at)postgresql(dot)org
CC: alfredo guzman <freddam_17(at)yahoo(dot)es>
Enviado: martes, 26 de febrero, 2008 23:35:01
Asunto: RE: [pgsql-es-ayuda] Problema con los Backups

Alfredo:
Aquí te envio el script que recopile y adapte a mis necesidades, 
Este genera la cantidad de backup que quieras tener almacenados de todas las
DB; por precaucion yo mantengo las ultimas 7 copias (uno por dia).
Y luego termina transfieriendo a otro servidor una copia del mismo (en caso
de que ocurra algo con el servidor).
Espero que te sea util.

Lo tengo corriendo en el cron y anda sin problemas evidentes.
Debian Etch 4.0
PostgreSQL 8.2


#! /bin/sh 
BACKUP_DIR=/home/postgres/backup
BACKUP_DIR_REMOTO=192.168.3.1:/home/backup/
BACKUP_NUM=7

# Realizar Backup

databases=`su -l postgres -c 'psql -q -t -c "select datname from
pg_database;" template1'`

for d in $databases; do
    if [ ! -d $BACKUP_DIR/$d ]; then
     echo -n "Creando directorio de respaldo $BACKUP_DIR/$d... "
         su -l postgres -c "mkdir $BACKUP_DIR/$d" ] || continue
     echo "done."
    fi

    # Establecer cantidad maxima del mismo backup $BACKUP_NUM

    archive=$BACKUP_DIR/$d/$d.gz 

    if [ -f $archive.$BACKUP_NUM ]; then 
    rm -f $archive.$BACKUP_NUM; 
    fi
 
    n=$(( $BACKUP_NUM - 1 )) 

    while [ $n -gt 0 ]; do
    if [ -f $archive.$n ]; then 
        mv $archive.$n $archive.$(( $n + 1 )) 
    fi
    n=$(( $n - 1 )) 
    done 

    if [ -f $archive ]; 
    then mv $archive $archive.1; 
    fi 

    echo -n "Respaldando la base $d... " 
    su -l postgres -c "(pg_dump -D $d |gzip -9) > $archive" 


    echo "Transfiriendo archivo $archive" 
    scp $archive root(at)$BACKUP_DIR_REMOTO

    echo "done." 
Done


 

-----Mensaje original-----
De: pgsql-es-ayuda-owner(at)postgresql(dot)org
[mailto:pgsql-es-ayuda-owner(at)postgresql(dot)org] En nombre de alfredo guzman
Enviado el: Lunes, 25 de Febrero de 2008 05:36 p.m.
Para: Alvaro Herrera
CC: pgsql-es-ayuda(at)postgresql(dot)org
Asunto: Re: [pgsql-es-ayuda] Problema con los Backups

Alvaro:

El respaldo se hace dentro del mismo servidor, gracias por los comentarios.

----- Mensaje original ----
De: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
Para: alfredo guzman <freddam_17(at)yahoo(dot)es>
CC: pgsql-es-ayuda(at)postgresql(dot)org
Enviado: lunes, 25 de febrero, 2008 13:36:02
Asunto: Re: [pgsql-es-ayuda] Problema con los Backups

alfredo guzman escribió:
> Alvaro:
> 
> todo me da a pensar que si ya que cuando reviso la carpeta de los
> backups veo que se genero el archivo del backup con el nombre
> BaseDatos_backup_20080225 pero con peso 0 kb o a veces con 25 Mb, 75
> mb.

El script se ejecuta remotamente o en el mismo servidor?  Si es
remotamente, quizas el problema sea la red?

-- 
Alvaro Herrera                                http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.





       
______________________________________________ 
¿Con Mascota por primera vez? Sé un mejor Amigo. Entra en Yahoo! Respuestas
http://es.answers..yahoo.com/info/welcome

--
TIP 5: ¿Has leído nuestro extenso FAQ?
         http://www.postgresql.org/docs/faqs.FAQ.html

No virus found in this incoming message.
Checked by AVG Free Edition. 
Version: 7.5.516 / Virus Database: 269.21.1/1297 - Release Date: 2008-02-25
09:22 a.m.
 

No virus found in this outgoing message.
Checked by AVG Free Edition. 
Version: 7.5.516 / Virus Database: 269.21.1/1297 - Release Date: 2008-02-25
09:22 a.m.
 






       
______________________________________________ 
¿Con Mascota por primera vez? Sé un mejor Amigo. Entra en Yahoo! Respuestas http://es.answers..yahoo.com/info/welcome


Responses

pgsql-es-ayuda by date

Next:From: Daniel FerrerDate: 2008-02-28 17:59:35
Subject: RE: Problema con los Backups
Previous:From: Jean-Paul ArgudoDate: 2008-02-28 15:57:29
Subject: Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Obtener "Curval()" de inserción masiva

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group