Advertisement
Guest User

Untitled

a guest
Apr 12th, 2017
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.32 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. # database credentials
  4.  
  5. DATABASEHOST=<host>
  6. DATABASEUSER=<user>
  7. DATABASEPASSWORD=<password>
  8. DATABASESCHEMA=<schema>
  9. DATABASEENV=<env>
  10.  
  11. # Local directory of mysqldump file
  12. LOCALDIR=<localdir>
  13.  
  14. # Temporary directory for compressed file
  15. TEMPDIR=<tempdir>
  16.  
  17. # Remote Directory for backups.
  18. REMOTEDIR=<remote-dir>
  19.  
  20. # USERname to login as
  21. BACKUPUSER=<backupuser>
  22.  
  23. # Backup host to login to
  24. BACKUPHOST=<backuphost>
  25.  
  26. # mysqldump file
  27. MYSQLDUMPFILE="$(date +%Y%m%d)"_bkp_"$DATABASESCHEMA".sql
  28.  
  29. # compressed file
  30. COMPRESSEDFILE="$(date +%Y%m%d)"_"$DATABASEENV"_"$DATABASESCHEMA".tar.gz
  31.  
  32. #--- end config
  33.  
  34.  
  35. echo $(date +%H:%M)
  36. echo "Creating the MySQL dump"
  37. mysqldump --host="$DATABASEHOST" --user="$DATABASEUSER" --password="$DATABASEPASSWORD" --single-transaction "$DATABASESCHEMA" > "$LOCALDIR"/"$MYSQLDUMPFILE"
  38.  
  39. #echo "Generating md5sum"
  40. md5sum "$LOCALDIR"/* > "$LOCALDIR"/checklist.chk
  41.  
  42. #echo "Compressing the dump and checklist"
  43. tar -cvzf "$TEMPDIR"/$(date +%Y%m%d)"_"$DATABASEENV"_"$DATABASESCHEMA".tar.gz" "$LOCALDIR"/*
  44.  
  45. #echo "Sending the compressed file to storage location"
  46. scp "$TEMPDIR"/"$COMPRESSEDFILE" "$BACKUPHOST":"$REMOTEDIR"
  47.  
  48. echo "Removing generated files"
  49. rm "$LOCALDIR"/checklist.chk > /dev/null 2>&1
  50.  
  51. rm "$LOCALDIR"/"$MYSQLDUMPFILE" > /dev/null 2>&1
  52.  
  53. rm "$TEMPDIR"/"$COMPRESSEDFILE" > /dev/null 2>&1
  54.  
  55. echo $(date +%H:%M)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement