Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

ED8restore_from_local-mysql.sh.TMP 2.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. #!/bin/bash
  2. ED8_Database_Name=db_ed8_
  3. TMP_File=/ED/ED8/ED8restore_from_local.pw
  4. read -p "Please enter the user name of mysql $ED8_Database_Name: " edname
  5. echo -e "ID\t$edname" > $TMP_File
  6. read -p "Please enter the password of mysql $ED8_Database_Name: " edpw
  7. echo -e "Password\t$edpw" >> $TMP_File
  8. LOG1=/ED/ED8/Script_ED8/_LOG/ED8restore_from_local-mysql.log
  9. edID=`cat $TMP_File | grep "ID" | awk '{print $NF}'`
  10. edPW=`cat $TMP_File | grep "Password" | awk '{print $NF}'`
  11. echo -e "\033[32mBelow are all saved mysql backup files \033[0m"
  12. ls /ED/ED8/Backup_file/ -al | grep backup-mysql-ED8
  13. echo
  14. echo -e -n "\033[33mWhich file do you want to restore? \033[0m"
  15. read DATABASE_BAK_File_NAME
  16. ls /ED/ED8/Backup_file/$DATABASE_BAK_File_NAME > /dev/null 2>&1
  17. if [[ $? != 0 ]]; then
  18. echo -e "\033[41;37mFail. The file ($DATABASE_BAK_File_NAME) doesn't exist. Exit \033[0m"
  19. echo
  20. exit
  21. else
  22. echo -e "\033[34mPass. The file ($DATABASE_BAK_File_NAME) exist, go next..."
  23. fi
  24. echo "======= `date +"%Y/%m/%d %H:%M:%S"` ==========================" | tee -a $LOG1
  25. echo "`date +"%Y/%m/%d %H:%M:%S"` - Starting restore ED8 mysql from dumped files" | tee -a $LOG1
  26. mysql -u $edID -p$edPW -e 'show databases;'
  27. mysql -u $edID -p$edPW -e 'show databases;' | grep $ED8_Database_Name | wc -l > /dev/null 2>&1
  28. if [[ $? == 0 ]]; then
  29. echo -e "\033[44;37m1/2: The database named $ED8_Database_Name exist, go next\033[0m" | tee -a $LOG1
  30. else
  31. echo "\033[45;37m1/2: There is no database named $ED8_Database_Name, next will create a new one automatically.\033[0m" | tee -a $LOG1
  32. expect -c "
  33. spawn sudo mysql -u $edID -p -e \"CREATE DATABASE IF NOT EXISTS $ED8_Database_Name\"
  34. expect \"password for ed:\"
  35. send \"$edPW\r\"
  36. expect \"Enter password:\"
  37. send \"$edPW\r\"
  38. expect eof"
  39. sleep 2
  40. fi
  41. #sudo mysql -u $edID -p $ED8_Database_Name < /ED/ED8/Backup_file/backup.sql
  42. #mysql -u $edID -p$edPW $ED8_Database_Name < /ED/ED8/Backup_file/backup.sql
  43. gunzip -c /ED/ED8/Backup_file/$DATABASE_BAK_File_NAME | mysql -u $edID -p$edpw $ED8_Database_Name #with gzip restore
  44. if [[ $? == 0 ]]; then
  45. echo -e "\033[44;37m2/2: Restored mysql. Finished\033[0m" | tee -a $LOG1
  46. else
  47. echo -e "\033[41;37m2/2: Restore mysql failed.\033[0m" | tee -a $LOG1
  48. fi
  49. rm $TMP_File
  50. echo | tee -a $LOG1
  51. echo -e "If you want to check the LOG, please perform below command: "
  52. echo -e " \033[35m# cat $LOG1 \033[0m"
  53. echo