Advertisement
Guest User

Untitled

a guest
Sep 29th, 2017
402
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.40 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. # mongo-backup.sh
  4. # Script to automate MongoDB Backups
  5. #
  6. # Requirements:
  7. # mongodump
  8. #
  9. # Author:
  10. # Eduardo Hernacki <eduardohki@gmail.com>
  11. #
  12. # Version:
  13. # 1.1 - 2017/08/08
  14. #
  15. # NOTE:
  16. # In case of permission errors in mongodump with "admin" user,
  17. # please add the following commands in "mongo" shell:
  18. #
  19. # > use admin
  20. # > db.auth("admin", "<your_password>")
  21. # > db.grantRolesToUser( "admin", [{ role: "backup", db: "admin" }])
  22. # > exit
  23. #
  24.  
  25. # Backup destination
  26. DUMP_DIR="/var/backup/mongodb"
  27.  
  28. # Destino do arquivo de logfile
  29. LOG_FILE=$DUMP_DIR/backup.log
  30.  
  31. # Credenciais MongoDB
  32. MONGO_USER=admin
  33. MONGO_PASS=<senha_admin_mongodb>
  34. MONGO_AUTHDB=admin
  35.  
  36. # Registra inicio de execução no arquivo de log
  37. echo "[$(date +%Y/%m/%d\ %H:%M:%S)] Starting mongodump" >> $LOG_FILE
  38.  
  39. # Executa o dump do MongoDB no diretorio especificado
  40. mongodump --host localhost --username $MONGO_USER --password $MONGO_PASS --authenticationDatabase $MONGO_AUTHDB --out $DUMP_DIR >> $LOG_FILE 2>&1
  41.  
  42. # Checks the dump execution
  43. if [ $? -eq 0 ]; then
  44. echo "[$(date +%Y/%m/%d\ %H:%M:%S)] mongodump successfully created" >> $LOG_FILE
  45. OUTPUT="OK: MongoDB Dump successfully created"
  46. EXITCODE=0
  47. else
  48. echo "[$(date +%Y/%m/%d\ %H:%M:%S)] mongodump finished with errors" >> $LOG_FILE
  49. OUTPUT="CRITICAL: Errors creating MongoDB Dump! Please verify the log \"$LOG_FILE\" for more details"
  50. EXITCODE=2
  51. fi
  52.  
  53. echo $OUTPUT
  54. exit $EXITCODE
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement