Thread: Re(2): Crontab and PostgreSQL Backup

Re(2): Crontab and PostgreSQL Backup

From
"pgsql-admin"
Date:
you can also try this:

#!/bin/sh

# Backing up each database...
pg_dumpall -o | bzip2 > /var/lib/pgsql/backups/pgdumpall_`date
"+%Y%m%d"`.bz2

# Removing backups of last seven days...
find /var/lib/pgsql/backups -mtime +7 -exec rm -f {} \;

Sherwin

gunix@telia.com writes:
>>I use PostgreSQL version 7.0.2 for Linux Conectiva 5.1 Server, and I
>> would like to know how do I do to configure and start the PostgreSQL's
>backup
>> and restore
>>using crontab?
>
>restore with crontab???
>
>Anyway.
>Put a line in crontab like:
>3  5 * * * /script/backdb.sh
>
>and the script  /script/backdb.sh
>could then look like:
>
>#!/bin/bash
>DATE=`date +%Y%m%d`
>/usr/pgsql/bin/pg_dump databas > /tmp/dump.$DATE
>
>then you have a file in /tmp/dump.$DATE that you could put on tape or
>whatever
>you use. Use pg_dumpall if you want all databases.
>You might want to consider making a  backup of the files  (for example
>pg_hba.conf) in  PGDATA directory. Read the man page for details about
>OID's.
>
>Good luck.
>Gunnar.



Re: Re(2): Crontab and PostgreSQL Backup

From
Ragnar Kjørstad
Date:
On Fri, Oct 06, 2000 at 07:48:03PM +0800, pgsql-admin wrote:
> you can also try this:

or:

#!/bin/bash
PREFIX=/directory
DATABASE=db
rm -f $PREFIX.last
pg_dump -d $DATABASE -f $PREFIX.last
ln -f $PREFIX.last $PREFIX.hour.`date +%H`
ln -f $PREFIX.last $PREFIX.day.`date +%d`
ln -f $PREFIX.last $PREFIX.month.`date +%Y%m`

Run this every hour, and $PREFIX will contain backups for every hour for
the last day, every day for the last month and one backup for every
month.


--
Ragnar Kjørstad
Modus Media

Re: Re(2): Crontab and PostgreSQL Backup

From
Jeff MacDonald
Date:
here's a backup script we use

#!/bin/sh
cd /pgsql/backups
if [ ! -d $1 ]
then
        mkdir $1
fi
cd $1
for i in `ls $2 | egrep -v "template1|udmsearch"`
do
        /usr/local/bin/rotate_files.pl $i 7
        /pgsql/bin/pg_dump -p $1 -h localhost $i > $i.0
        gzip -f $i.0 &
done


On Fri, 6 Oct 2000, [iso-8859-1] Ragnar Kj�rstad wrote:

> On Fri, Oct 06, 2000 at 07:48:03PM +0800, pgsql-admin wrote:
> > you can also try this:
>
> or:
>
> #!/bin/bash
> PREFIX=/directory
> DATABASE=db
> rm -f $PREFIX.last
> pg_dump -d $DATABASE -f $PREFIX.last
> ln -f $PREFIX.last $PREFIX.hour.`date +%H`
> ln -f $PREFIX.last $PREFIX.day.`date +%d`
> ln -f $PREFIX.last $PREFIX.month.`date +%Y%m`
>
> Run this every hour, and $PREFIX will contain backups for every hour for
> the last day, every day for the last month and one backup for every
> month.
>
>
>

Jeff MacDonald,

-----------------------------------------------------
PostgreSQL Inc        | Hub.Org Networking Services
jeff@pgsql.com        | jeff@hub.org
www.pgsql.com        | www.hub.org
1-902-542-0713        | 1-902-542-3657
-----------------------------------------------------
Facsimile : 1 902 542 5386
IRC Nick  : bignose