Guest User

Untitled

a guest
Mar 4th, 2018
286
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.31 KB | None | 0 0
  1. #!/bin/sh
  2.  
  3. # dbbackup - Create a backup of all your MySQL databases
  4. #
  5. # Copyright 2011 Rene Kreijveld - r.kreijveld@gakijken.nl
  6. #
  7. # This program is free software; you may redistribute it and/or modify it.
  8.  
  9. NOW=$(date +"%Y%m%d-%H%M%S")
  10. DBCONF=/usr/local/directadmin/conf/mysql.conf
  11. DBUSER=`grep 'user=' $DBCONF | cut -d = -f 2`
  12. DBHOST=localhost
  13. DBPASS=`grep 'passwd=' $DBCONF | cut -d = -f 2`
  14. BACKUPDIR=/backups/mysql
  15.  
  16. # Find MySQL Socket
  17. if [ -S /var/lib/mysql/mysql.sock ]
  18. then
  19. MYSOCK=/var/lib/mysql/mysql.sock
  20. elif [ -S /var/run/mysqld/mysqld.sock ]
  21. then
  22. MYSOCK=/var/run/mysqld/mysqld.sock
  23. elif [ -S /tmp/mysql.sock ]
  24. then
  25. MYSOCK=/tmp/mysql.sock
  26. fi
  27.  
  28. #MYSOCK=/path/to/your/socket/file/here
  29.  
  30. if [ -z MYSOCK ]
  31. then
  32. echo "No valid MySQL socket file found!"
  33. echo "Either MySQL is not running or it is installed in a custom location."
  34. echo "Manually add it's path in this script on line 28."
  35. exit 1
  36. fi
  37.  
  38. DBS=`mysql -u$DBUSER -h$DBHOST -p$DBPASS -S$MYSOCK -e"show databases"`
  39.  
  40. for DATABASE in $DBS
  41. do
  42. case "$DATABASE" in
  43. 'Database')
  44. ;;
  45. 'information_schema')
  46. ;;
  47. 'performance_schema')
  48. ;;
  49. 'da_roundcube')
  50. ;;
  51. 'mysql')
  52. ;;
  53. *)
  54. FILENAME="$DATABASE.$NOW.gz"
  55. mysqldump -u$DBUSER -h$DBHOST -p$DBPASS -S$MYSOCK $DATABASE | gzip --best > $BACKUPDIR/$FILENAME
  56. ;;
  57. esac
  58. done
Add Comment
Please, Sign In to add comment