NewsBlur/utils/backups/postgresql_backup.sh

29 lines
593 B
Bash
Raw Normal View History

2010-11-26 14:26:08 -05:00
#!/bin/sh
DB_NAME='newsblur'
date_now=`date +%Y_%m_%d_%H_%M`
file_name='backup_postgresql_'${date_now}'.sql.gz'
log() {
echo $1
}
do_cleanup(){
2010-12-16 13:55:32 -05:00
sudo su postgres -c "rm ${file_name}"
2010-11-26 14:26:08 -05:00
log 'cleaning up....'
}
do_backup(){
log 'snapshotting the db and creating archive'
2010-12-16 13:55:32 -05:00
time pg_dump -U newsblur ${DB_NAME} | gzip -c > ${file_name}
2010-11-26 14:26:08 -05:00
log 'data backd up and created snapshot'
}
save_in_s3(){
log 'saving the psql backup archive in amazon S3' && \
2010-12-16 13:55:32 -05:00
python s3.py set ${file_name} && \
2010-11-26 14:26:08 -05:00
log 'data backup saved in amazon s3'
}
do_backup && save_in_s3 && do_cleanup