Path to boto config file, needed by gsutils
October 7, 2019 · View on GitHub
BOTO_CONFIG="/etc/boto.cfg"
Path in which to create the backup (will get cleaned later)
BACKUP_PATH="/mnt/data/dump/"
DB name
DB_NAME="mydatabase"
Google Cloud Storage Bucket Name
BUCKET_NAME="mybackupbucket"
Don't run on the master of a replica set, only on replicas
IS_MASTER=mongo --quiet --eval "d=db.isMaster(); print( d['ismaster'] );"
if [ "$IS_MASTER" == "true" ]
then
exit 2
fi
CURRENT_DATE=date +"%Y%m%d-%H%M"
Backup filename
BACKUP_FILENAME="{DB_NAME}_{CURRENT_DATE}.tar.gz"
Create the backup
mongodump --db BACKUP_PATH cd $BACKUP_PATH
Archive and compress
tar -cvzf BACKUP_FILENAME *
Copy to Google Cloud Storage
echo "Copying BACKUP_FILENAME to gs://BACKUP_PATHBUCKET_NAME/ 2>&1 echo "Copying finished" echo "Removing backup data" rm -rf $BACKUP_PATH*