Move database functions

This commit is contained in:
Blade of Darkness 2022-03-29 19:18:57 +02:00
parent e270446e84
commit 62ba8078bd
4 changed files with 30 additions and 30 deletions

View File

@ -2,7 +2,7 @@
CONFIG=./setenv
. $CONFIG
. include/functions.DB
. include/functions
USER=$1
DATABASE=$1
@ -12,7 +12,7 @@ then
echo -e "delete database/s for given username."
echo -e "usage: $(basename $0) <username>"
else
backup_database
drop_database
database_backup
database_remove
echo "The databases for $USER has been archived, and removed." | sudo mail -s "Database for $USER has been removed" $ADMIN_EMAIL
fi

View File

@ -68,3 +68,28 @@ backup_user_data()
echo "Archiving home dir..."
sudo tar cfz $BACKUP_USER_DATA/$1.tgz /home/$1
}
#Common functions used for Databases management scripts
database_create()
{
sudo mysql -u root << _EOF
CREATE DATABASE $DATABASE;
GRANT ALL PRIVILEGES ON $DATABASE.* TO '$USER'@'localhost' IDENTIFIED BY '$PASSWORD';
FLUSH PRIVILEGES;
_EOF
}
database_backup()
{
sudo mysqldump -u root $DATABASE | gzip > /tmp/$DATABASE.sql.gz
sudo mv /tmp/$DATABASE.sql.gz $BACKUP_USER_DATA/
}
database_remove()
{
sudo mysql -u root << _EOF
DROP DATABASE $DATABASE;
FLUSH PRIVILEGES;
_EOF
}

View File

@ -1,25 +0,0 @@
#!/bin/bash
#Common functions used for Databases management scripts
create_database()
{
sudo mysql -u root << _EOF
CREATE DATABASE $DATABASE;
GRANT ALL PRIVILEGES ON $DATABASE.* TO '$USER'@'localhost' IDENTIFIED BY '$PASSWORD';
FLUSH PRIVILEGES;
_EOF
}
backup_database()
{
sudo mysqldump -u root $DATABASE | gzip > /tmp/$DATABASE.sql.gz
sudo mv /tmp/$DATABASE.sql.gz $BACKUP_USER_DATA/
}
drop_database()
{
sudo mysql -u root << _EOF
DROP DATABASE $DATABASE;
FLUSH PRIVILEGES;
_EOF
}

4
makedb
View File

@ -2,7 +2,7 @@
CONFIG=./setenv
. $CONFIG
. include/functions.DB
. include/functions
USER=$1
DATABASE=$1
@ -13,7 +13,7 @@ then
echo -e "adding a new database for given username."
echo -e "usage: $(basename $0) <username>"
else
create_database
database_create
sed -e "s/_username_/$USER/g" -e "s/_password_/$PASSWORD/g" include/dbemail.tmpl | sudo mail -s "Your database has been provisioned" $USER@thunix.net
sed -e "s/_username_/$USER/g" -e "s/_password_/$PASSWORD/g" include/dbemail.tmpl | sudo mail -s "Your database has been provisioned" $ADMIN_EMAIL
fi