Files
VestaCP/bin/v_delete_db_base
2012-01-03 21:47:10 +02:00

83 lines
1.8 KiB
Bash
Executable File

#!/bin/bash
# info: delete database
# options: user database
#
# The function for deleting the database. If database user have access to
# another database, he will not be deleted.
#----------------------------------------------------------#
# Variable&Function #
#----------------------------------------------------------#
# Argument defenition
user=$1
database=$2
# Importing variables
source $VESTA/conf/vars.conf
source $V_CONF/vesta.conf
source $V_FUNC/shared.func
source $V_FUNC/db.func
#----------------------------------------------------------#
# Verifications #
#----------------------------------------------------------#
# Checking arg number
check_args '2' "$#" 'user db_name'
# Checking argument format
format_validation 'user' 'database'
# Checking db system is enabled
is_system_enabled 'db'
# Checking user
is_user_valid
# Checking user is active
is_user_suspended
# Checking db existance
is_db_valid
# Checking db is active
is_db_suspended
#----------------------------------------------------------#
# Action #
#----------------------------------------------------------#
# Get some variables we do not have now
db_user=$(get_db_value '$USER')
host=$(get_db_value '$HOST')
type=$(get_db_value '$TYPE')
# Switching on db type
case $type in
mysql) del_db_mysql ;;
pgsql) del_db_pgsql ;;
esac
#----------------------------------------------------------#
# Vesta #
#----------------------------------------------------------#
# Decreasing db value
decrease_db_value
# Decreasing domain value
decrease_user_value "$user" '$U_DATABASES'
# Deleting vesta db record
del_db_vesta
# Logging
log_event 'system' "$V_EVENT"
exit