| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- #!/bin/bash
- # info: delete database
- # options: USER DATABASE
- # labels:
- #
- # example: v-delete-database admin wp_db
- #
- # The function for deleting the database. If database user have access to
- # another database, he will not be deleted.
- #----------------------------------------------------------#
- # Variable&Function #
- #----------------------------------------------------------#
- # Argument definition
- user=$1
- database=$2
- # Includes
- source $HESTIA/func/main.sh
- source $HESTIA/func/db.sh
- source $HESTIA/conf/hestia.conf
- #----------------------------------------------------------#
- # Verifications #
- #----------------------------------------------------------#
- check_args '2' "$#" 'USER DATABASE'
- is_format_valid 'user' 'database'
- is_system_enabled "$DB_SYSTEM" 'DB_SYSTEM'
- is_object_valid 'user' 'USER' "$user"
- is_object_valid 'db' 'DB' "$database"
- # Perform verification if read-only mode is enabled
- check_hestia_demo_mode
- #----------------------------------------------------------#
- # Action #
- #----------------------------------------------------------#
- # Get database values
- get_database_values
- # Issues with $SUSPENDED overwritten when delete_mysql_database is called
- suspended=$SUSPENDED
- # Switching on db type
- case $TYPE in
- mysql) delete_mysql_database ;;
- pgsql) delete_pgsql_database ;;
- esac
- #----------------------------------------------------------#
- # Hestia #
- #----------------------------------------------------------#
- # Deleting database
- sed -i "/DB='$database' /d" $USER_DATA/db.conf
- # Decreasing counters
- decrease_dbhost_values
- decrease_user_value "$user" '$U_DATABASES'
- # Check if is suspended to decrease the suspended value
- if [ ! -z "$suspended" ]; then
- if [ "$suspended" == "yes" ]; then
- decrease_user_value "$user" '$SUSPENDED_DB'
- fi
- fi
- # Logging
- log_history "deleted $database database"
- log_event "$OK" "$ARGUMENTS"
- exit
|