Skip to content

Instantly share code, notes, and snippets.

@nagi
Created December 13, 2016 16:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nagi/512c0c8abfd4c391464a721c8c5255e8 to your computer and use it in GitHub Desktop.
Save nagi/512c0c8abfd4c391464a721c8c5255e8 to your computer and use it in GitHub Desktop.
Script to generate hourly, daily & monthly backups of a Mongo DB database
#!/bin/bash
MONGO_DATABASE="bingo"
MONGO_HOST="127.0.0.1"
MONGO_PORT="27017"
MONGODUMP_PATH="/usr/bin/mongodump"
BACKUPS_DIR="/home/some-user/database-backups/cronned"
BACKUP_NAME="latest"
DAY=d-`date +%d`
HOUR=h-`date +%H`
MONTH=h-`date +%m`
cd /home/ubuntu/database-backups/cronned
$MONGODUMP_PATH -d $MONGO_DATABASE
mkdir -p $BACKUPS_DIR
mv dump $BACKUP_NAME
tar -zcvf $BACKUPS_DIR/$BACKUP_NAME.tgz $BACKUP_NAME
cp $BACKUPS_DIR/$BACKUP_NAME.tgz $DAY.tgz
cp $BACKUPS_DIR/$BACKUP_NAME.tgz $HOUR.tgz
cp $BACKUPS_DIR/$BACKUP_NAME.tgz $MONTH.tgz
rm -rf $BACKUP_NAME
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment