Re: [GENERAL] Using cp to back up a database? - Mailing list pgsql-general

From Jeff Janes
Subject Re: [GENERAL] Using cp to back up a database?
Date
Msg-id CAMkU=1wDdONsLbtkNR=zQkBgZaVJGvVwu7D2Uc+L+HJRhgy8WA@mail.gmail.com
Whole thread Raw
In response to [GENERAL] Using cp to back up a database?  (Ron Johnson <ron.l.johnson@cox.net>)
List pgsql-general
On Mon, Oct 9, 2017 at 6:40 AM, Ron Johnson <ron.l.johnson@cox.net> wrote:
Hi,

v8.4.20

This is what the current backup script uses:

/usr/bin/psql -U postgres -c "SELECT pg_start_backup('Incrementalbackup',true);"
cp -r /var/lib/pgsql/data/* $dumpdir/data/
/usr/bin/psql -U postgres template1 -c "SELECT pg_stop_backup();"


That's fine, as long as you have a wal archive.  Although I don't know what is "Incremental" about it.  If you upgrade to a version which wasn't quite so ancient, you could use pg_basebackup.
 

Should it use rsync or pg_dump instead?

rsync is dangerous if not used with great care, and probably isn't going to get you much for just doing a backup.

pg_dump is also fine, but it does something different, it creates a logical backup, not a physical backup.  The backup from pg_dump cannot be used to seed a PITR or streaming replica.  On the other hand, it can restored into a database from a different version and different architecture.   And with pg_dump the pg_start_backup and pg_stop_backup are useless and confusing.

Cheers

pgsql-general by date:

Previous
From: Achilleas Mantzios
Date:
Subject: Re: [GENERAL] Using cp to back up a database?
Next
From: mj0nes
Date:
Subject: [GENERAL] pg_start/stop_backup naming conventions