Advertisement
Guest User

Untitled

a guest
Jan 13th, 2017
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.41 KB | None | 0 0
  1. #!/bin/bash
  2. # Shell script to replicate MySql database from REMOTE to LOCAL
  3. # By Niraj Shah
  4.  
  5. # CONFIG - Only edit the below lines to setup the script
  6. # ===============================
  7.  
  8. # REMOTE DB SETTINGS
  9. REMOTE_USER="user" # USERNAME
  10. REMOTE_PASS="password" # PASSWORD
  11. REMOTE_HOST="mydomain.com" # HOSTNAME / IP
  12. REMOTE_DB="test_db" # DATABASE NAME
  13.  
  14. # LOCAL DB SETTINGS
  15. DB_USER="user" # USERNAME
  16. DB_PASS="pass2" # PASSWORD
  17. DB_HOST="localhost" # HOSTNAME / IP
  18. DB_NAME="test_local" # DATABASE NAME
  19.  
  20. DUMP_FILE="temp.sql" # SQL DUMP FILENAME
  21.  
  22. # DO NOT EDIT BELOW THIS LINE UNLESS YOU KNOW WHAT YOU ARE DOING
  23. # ===============================
  24.  
  25. # get remote database
  26.  
  27. if [ "$DB_PASS" == "" ];
  28. then
  29. mysqldump -h $REMOTE_HOST -u $REMOTE_USER $REMOTE_DB > $DUMP_FILE
  30. else
  31. mysqldump -h $REMOTE_HOST -u $REMOTE_USER -p$REMOTE_PASS $REMOTE_DB > $DUMP_FILE
  32. fi
  33.  
  34. # drop all tables
  35.  
  36. if [ "$DB_PASS" == "" ];
  37. then
  38. mysqldump -u $DB_USER \
  39. --add-drop-table --no-data $DB_NAME | \
  40. grep -e '^DROP \| FOREIGN_KEY_CHECKS' | \
  41. mysql -u $DB_USER $DB_NAME
  42. else
  43. mysqldump -u $DB_USER -p$DB_PASS \
  44. --add-drop-table --no-data $DB_NAME | \
  45. grep -e '^DROP \| FOREIGN_KEY_CHECKS' | \
  46. mysql -u $DB_USER -p$DB_PASS $DB_NAME
  47. fi
  48.  
  49. # restore new database
  50.  
  51. if [ "$DB_PASS" == "" ];
  52. then
  53. mysql -u $DB_USER $DB_NAME < $DUMP_FILE
  54. else
  55. mysql -u $DB_USER -p$DB_PASS $DB_NAME < $DUMP_FILE
  56. fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement