Advertisement
Guest User

Untitled

a guest
Mar 12th, 2019
120
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.86 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. #mongo configs
  4. APP_NAME="xxxxxx"
  5. MONGO_DATABASE="xxxxxx"
  6. MONGO_HOST="127.0.0.1"
  7. MONGO_PORT="27017"
  8. MONGO_USERNAME="xxxx"
  9. MONGO_PASSWORD="xxxxx"
  10.  
  11. #backup configs
  12. TIMESTAMP=`date +%F-%H%M`
  13. BACKUPS_DIR="/home/$USER/mongo-backups/$APP_NAME"
  14. BACKUP_NAME="$APP_NAME-$TIMESTAMP.gz"
  15. ARCHIVE_PATH="$BACKUPS_DIR/$BACKUP_NAME"
  16.  
  17. #ftp configs
  18. FTP_HOST="xxxxxxx"
  19. FTP_USER="xxxxxxxxxx"
  20. FTP_PASSWD="xxxxxxx"
  21.  
  22. #dump the DB to archive
  23. mkdir -p $BACKUPS_DIR
  24. mongodump --username $MONGO_USERNAME --password $MONGO_PASSWORD --authenticationDatabase $MONGO_DATABASE --db $MONGO_DATABASE --archive=$ARCHIVE_PATH --gzip
  25.  
  26. #upload to FTP backup
  27. ftp -n $FTP_HOST <<END_SCRIPT
  28. quote USER $FTP_USER
  29. quote PASS $FTP_PASSWD
  30. binary
  31. lcd $BACKUPS_DIR
  32. put $BACKUP_NAME
  33. quit
  34. END_SCRIPT
  35.  
  36. #delete older than 30 days local backups
  37. find $ARCHIVE_PATH -type f -name '*.gz' -mtime +30 -exec rm -f {} \;
  38.  
  39. exit 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement