NewsBlur/utils/backups/mongo_backup.sh

40 lines
931 B
Bash
Raw Normal View History

2010-11-26 13:27:16 -05:00
#!/bin/sh
MONGODB_SHELL='/usr/bin/mongo'
DUMP_UTILITY='/usr/bin/mongodump'
DB_NAME='newsblur'
COLLECTIONS="classifier_tag classifier_author classifier_feed classifier_title"
date_now=`date +%Y_%m_%d_%H_%M`
2010-11-26 13:27:16 -05:00
dir_name='mongo_backup_'${date_now}
file_name='mongo_backup_'${date_now}'.bz2'
log() {
echo $1
}
do_cleanup(){
rm -rf db_backup_2010*
log 'cleaning up....'
}
do_backup(){
log 'snapshotting the db and creating archive'
# ${MONGODB_SHELL} admin fsync_lock.js
for collection in $COLLECTIONS
do
${DUMP_UTILITY} -d ${DB_NAME} -o ${dir_name} -c $collection
done
2010-11-26 13:27:16 -05:00
tar -jcf $file_name ${dir_name}
# ${MONGODB_SHELL} admin fsync_unlock.js
2010-11-26 13:27:16 -05:00
log 'data backd up and created snapshot'
}
save_in_s3(){
log 'saving the backup archive in amazon S3' && \
python aws_s3.py set ${file_name} && \
log 'data backup saved in amazon s3'
}
do_backup #&& save_in_s3 && do_cleanup