v-rebuild-databases 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. #!/bin/bash
  2. # info: rebuild databases
  3. # options: USER
  4. #
  5. # The function for rebuilding of all databases of a single user.
  6. #----------------------------------------------------------#
  7. # Variable&Function #
  8. #----------------------------------------------------------#
  9. # Argument definition
  10. user=$1
  11. # Includes
  12. source $VESTA/func/main.sh
  13. source $VESTA/func/db.sh
  14. source $VESTA/func/rebuild.sh
  15. source $VESTA/conf/vesta.conf
  16. #----------------------------------------------------------#
  17. # Verifications #
  18. #----------------------------------------------------------#
  19. check_args '1' "$#" 'USER'
  20. is_format_valid 'user'
  21. is_system_enabled "$DB_SYSTEM" 'DB_SYSTEM'
  22. is_object_valid 'user' 'USER' "$user"
  23. #----------------------------------------------------------#
  24. # Action #
  25. #----------------------------------------------------------#
  26. # Flush counters
  27. U_DATABASES=0
  28. SUSPENDED_DB=0
  29. U_DISK_DB=0
  30. # Starting rebuild loop
  31. for database in $(search_objects 'db' 'SUSPENDED' "no" 'DB'); do
  32. # Get database values
  33. get_database_values
  34. # Switching on db type
  35. case $TYPE in
  36. mysql) rebuild_mysql_database ;;
  37. pgsql) rebuild_pgsql_database ;;
  38. esac
  39. U_DISK_DB=$((U_DISK_DB + U_DISK))
  40. U_DATABASES=$((U_DATABASES + 1))
  41. if [ "$SUSPENDED" = 'yes' ]; then
  42. SUSPENDED_DB=$((SUSPENDED_DB + 1))
  43. fi
  44. done
  45. update_user_value "$user" '$SUSPENDED_DB' "$SUSPENDED_DB"
  46. update_user_value "$user" '$U_DATABASES' "$U_DATABASES"
  47. update_user_value "$user" '$U_DISK_DB' "$U_DISK_DB"
  48. #----------------------------------------------------------#
  49. # Vesta #
  50. #----------------------------------------------------------#
  51. # Logging
  52. log_event "$OK" "$ARGUMENTS"
  53. exit