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
|