Guest User

Untitled

a guest
Nov 29th, 2017
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.20 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. set -e
  4.  
  5. if [ -z "${AWS_KEY}" ]; then
  6. echo "You need to set the AWS_KEY environment variable."
  7. exit 1
  8. fi
  9.  
  10. if [ -z "${AWS_SECRET}" ]; then
  11. echo "You need to set the AWS_SECRET environment variable."
  12. exit 1
  13. fi
  14.  
  15. if [ -z "${MYSQL_USER}" ]; then
  16. MYSQL_USER=root
  17. fi
  18.  
  19. if [ -z "${MYSQL_PASSWORD}" ]; then
  20. MYSQL_PASSWORD=''
  21. fi
  22.  
  23. if [ -z "${MYSQL_HOST}" ]; then
  24. MYSQL_HOST=localhost
  25. fi
  26.  
  27. AWS_BUCKET="legacy-mysql-dumps"
  28. DB="skydeo"
  29. MYSQL_HOST_OPTS="-h $MYSQL_HOST -u $MYSQL_USER"
  30. if [ ! -z "${MYSQL_PASSWORD}" ]; then
  31. MYSQL_HOST_OPTS="$MYSQL_HOST_OPTS -p$MYSQL_PASSWORD"
  32. fi
  33.  
  34. MYSQLDUMP_OPTIONS="--quote-names --complete-insert --no-create-info --compact --quick --single-transaction --create-options --comments --net_buffer_length=16384"
  35.  
  36. echo "Starting dump of ${DB} database from ${MYSQL_HOST}..."
  37. echo "With Options ${MYSQLDUMP_OPTIONS}"
  38.  
  39. for TABLE in `mysql $MYSQL_HOST_OPTS $DB -e 'show tables' | egrep -v 'Tables_in_' `; do
  40. TABLENAME=$(echo $TABLE|awk '{ printf "%s", $0 }')
  41. echo Dumping $TABLENAME
  42. mysqldump $MYSQL_HOST_OPTS $MYSQLDUMP_OPTIONS $DB $TABLENAME | gzip | AWS_ACCESS_KEY_ID=$AWS_KEY AWS_SECRET_ACCESS_KEY=$AWS_SECRET aws s3 cp - s3://$AWS_BUCKET/$TABLENAME.sql.gz
  43. done
  44.  
  45. echo "Done!"
  46.  
  47. exit 0
Add Comment
Please, Sign In to add comment