Advertisement
Guest User

Untitled

a guest
May 1st, 2017
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.78 KB | None | 0 0
  1. #!/bin/bash
  2. # @author: Johnny Martin
  3. # Created: 24/02/2017
  4.  
  5. MYSQL_USER="XXXXXX"
  6. MYSQL_PASS="XXXXXX"
  7.  
  8. for ACCOUNT_PATH in /home/*/ ; do
  9. ACCOUNT=$(basename "$ACCOUNT_PATH")
  10.  
  11. # Get databases with an account name prefix
  12. DATABASES=$(mysql -u$MYSQL_USER -p$MYSQL_PASS -B -N -e "SHOW DATABASES LIKE '${ACCOUNT}\_%'")
  13.  
  14. # Check if databases exist
  15. if [ ! -z "$DATABASES" ]; then
  16. for database in $DATABASES; do
  17. # Dump individual databases into account sql backup folder
  18. mysqldump -u"$MYSQL_USER" -p"$MYSQL_PASS" --force --opt -B "$database" | gzip > "/home/$ACCOUNT/_sqlbackup/$database.sql.gz"
  19. echo "Backing up $database"
  20. done
  21.  
  22. # Set permissions back to normal
  23. chown -R $ACCOUNT.$ACCOUNT "/home/$ACCOUNT/_sqlbackup/"
  24. chmod -R 700 "/home/$ACCOUNT/_sqlbackup/"
  25. fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement