v-change-database-host-password 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. #!/bin/bash
  2. # info: change database server password
  3. # options: TYPE HOST USER PASSWORD
  4. #
  5. # The function changes database server password.
  6. #----------------------------------------------------------#
  7. # Variable&Function #
  8. #----------------------------------------------------------#
  9. # Argument definition
  10. type=$1
  11. host=$2
  12. dbuser=$3
  13. password=$4; HIDE=4
  14. # Includes
  15. source $VESTA/func/main.sh
  16. source $VESTA/func/db.sh
  17. source $VESTA/conf/vesta.conf
  18. #----------------------------------------------------------#
  19. # Verifications #
  20. #----------------------------------------------------------#
  21. args_usage='TYPE HOST DBUSER DBPASS'
  22. check_args '4' "$#" "$args_usage"
  23. is_format_valid 'host' 'dbuser'
  24. is_object_valid "../../conf/$type" 'HOST' "$host"
  25. dbpass="$password"
  26. #----------------------------------------------------------#
  27. # Action #
  28. #----------------------------------------------------------#
  29. # Define email
  30. email=$(grep CONTACT $VESTA/data/users/admin/user.conf |cut -f2 -d \')
  31. subj="v-change-database-host-password $*"
  32. case $type in
  33. mysql) mysql_connect $host;
  34. query="USE mysql; UPDATE user SET"
  35. query="$query password=PASSWORD('$dbpass')"
  36. query="$query WHERE User='$dbuser';"
  37. query="$query FLUSH PRIVILEGES;"
  38. mysql_query "$query" ;;
  39. pgsql) echo "TBD" >/dev/null;;
  40. esac
  41. update_object_value "../../conf/$type" 'HOST' "$host" '$USER' "$dbuser"
  42. update_object_value "../../conf/$type" 'HOST' "$host" '$PASSWORD' "$dbpass"
  43. #----------------------------------------------------------#
  44. # Vesta #
  45. #----------------------------------------------------------#
  46. # Logging
  47. log_event "$OK" "$ARGUMENTS"
  48. exit