Guest User

Untitled

a guest
Apr 17th, 2018
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.10 KB | None | 0 0
  1. #!/bin/bash
  2. #MySQL Backup
  3.  
  4. MyUSER=""
  5. MyPASS=""
  6. MyHOST=""
  7.  
  8. MYSQL="$(which mysql)"
  9. MYSQLDUMP="$(which mysqldump)"
  10. CHOWN="$(which chown)"
  11. CHMOD="$(which chmod)"
  12. GZIP="$(which gzip)"
  13.  
  14. DEST="/var/backups"
  15. MBD="$DEST/mysql"
  16. HOST="$(hostname)"
  17. NOW="$(date +"%d-%m-%Y")"
  18.  
  19. # File to store current backup file
  20. FILE=""
  21. # Store list of databases
  22. DBS=""
  23.  
  24. # DO NOT BACKUP these databases
  25. IGGY="example"
  26.  
  27. [ ! -d $MBD ] && mkdir -p $MBD || :
  28.  
  29. # Only root can access it!
  30. $CHOWN 0.0 -R $DEST
  31. $CHMOD 0600 $DEST
  32.  
  33. # Get all database list first
  34. DBS="$($MYSQL -u $MyUSER -h $MyHOST -p$MyPASS -Bse 'show databases')"
  35.  
  36. for db in $DBS
  37. do
  38. skipdb=-1
  39. if [ "$IGGY" != "" ];
  40. then
  41. for i in $IGGY
  42. do
  43. [ "$db" == "$i" ] && skipdb=1 || :
  44. done
  45. fi
  46.  
  47. if [ "$skipdb" == "-1" ] ; then
  48. FILE="$MBD/$db.$HOST.$NOW.gz"
  49. # do all inone job in pipe,
  50. # connect to mysql using mysqldump for select mysql database
  51. # and pipe it out to gz file in backup dir :)
  52. $MYSQLDUMP -u $MyUSER -h $MyHOST -p$MyPASS $db | $GZIP -9 > $FILE
  53. fi
  54. done
  55.  
  56. find $MBD -type f -mtime +14 -exec rm {} \;
Add Comment
Please, Sign In to add comment