Advertisement
Guest User

Untitled

a guest
May 5th, 2017
166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.48 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. #setting applictation variables
  4. MYSQL=/usr/bin/mysql
  5. MYSQLDUMP=/usr/bin/mysqldump
  6. RSYNC=/usr/bin/rsync
  7. GZIP=/bin/gzip
  8. SU=/bin/su
  9. SSH=/usr/bin/ssh
  10. RM=/bin/rm
  11.  
  12.  
  13. #setting User / Password and File location / Host variables
  14.  
  15. MYSQLUSER=root
  16. PASS=secretPass
  17. USER=test-bak
  18. KEY=/home/test-bak/.ssh/id_rsa.pub
  19. DUMPFILE=dbs_beezag-backup-`date +%m-%d-%y`.sql
  20. DPATH=/home/test-bak/backupdb
  21. RHOST=backup
  22. RPATH=/home/test-bak/backupdb
  23. LPATH=/home/test-bak/backupdb/*
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30. echo ' '
  31. echo "Database backup script is beginning"
  32. echo ' '
  33. sleep 5
  34. $MYSQL -u$MYSQLUSER -p$PASS -e 'USE dbs_beezag; FLUSH TABLES WITH READ LOCK;'
  35. echo "Attempting to FLUSH TABLES on dbs_beezag with READ LOCK"
  36. echo ' '
  37. sleep 5
  38. if [ $? == 0 ];
  39. then
  40. echo "Flushing the tables on dbs_beezag with READ LOCK - SUCCESS"
  41. else
  42. echo "Error on FLUSH TABLES with READ LOCK on dbs_beezag"
  43. fi
  44. echo ' '
  45.  
  46. sleep 5
  47. echo "Attempting to dump the database dbs_beezag to file: $DUMPFILE"
  48. echo ' '
  49. $MYSQLDUMP -u$MYSQLUSER -p$PASS dbs_beezag > $DPATH/$DUMPFILE
  50. sleep 5
  51. if [ $? == 0 ];
  52. then
  53. echo "MySQL DUMP of dbs_beezag to $DUMPFILE SUCCESS"
  54. else
  55. echo "MySQL DUMP of dbs_beezag to $DUMPFILE FAIL"
  56. fi
  57. echo ' '
  58.  
  59. sleep 5
  60. echo "Attempting UNLOCK TABLES on dbs_beezag"
  61. echo ' '
  62. $MYSQL -u$MYSQLUSER -p$PASS -e 'UNLOCK TABLES'
  63. if [ $? == 0 ];
  64. then
  65. echo "UNLOCK TABLES on dbs_beezag SUCCESS"
  66. else
  67. echo "UNLOCK TABLES on dbs_beezag FAIL"
  68. fi
  69. echo ' '
  70.  
  71. sleep 5
  72. echo "Saving sapce with GZIP: creating $DUMPFILE.gz"
  73. echo ' '
  74. $GZIP $DPATH/$DUMPFILE
  75. if [ $? == 0 ];
  76. then
  77. echo "GZIP SUCCESS: $DUMPFILE.gz created"
  78. else
  79. echo "GZIP on $DUMPFILE FAIL"
  80. fi
  81. echo ' '
  82.  
  83. sleep 5
  84. # switching to user "test-bak", and executing the 'rsync' command
  85. echo "Attemtping to RSYNC the file $DUMPFILE.gz to an offsite remote location"
  86. echo ' '
  87. $SU -c "$RSYNC -az -e $SSH -i $KEY $LPATH $USER@$RHOST:$RPATH" $USER
  88. echo ' '
  89. if [ $? == 0 ];
  90. then
  91. echo ' '
  92. echo "RSYNC dbs_beezag backup file: $DUMPFILE.gz to offsite storage SUCCESS"
  93. else
  94. echo ' '
  95. echo "RSYNC dbs_beezag backup file: $DUMPTFILE to offsite storage FAIL"
  96. fi
  97. echo ' '
  98.  
  99.  
  100. sleep 5
  101. echo "Attempting to remove local copy of dbs_beezag backup"
  102. echo ' '
  103. $RM $DPATH/$DUMPFILE.gz
  104. if [ $? == 0 ];
  105. then
  106. echo "Remove local copy of $DUMPFILE.gz backup SUCCESS"
  107. else
  108. echo "Remove local copy of $DUMPFILE.gz backup FAIL"
  109. fi
  110. echo ' '
  111. sleep 10
  112. echo "Database backup script is finished"
  113. echo "*******"
  114. echo ' '
  115. echo "DONE and DONE"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement