MySQL建库授权shell工具

建库授权使用说明:
1、将MySQL-Auth-DB.sh上传至服务器中。
2、添加脚本可执行权限:
chmod +x MySQL-Auth-DB.sh
3、执行脚本:
sh MySQL-Auth-DB.sh
说明:
———————————————-
1 MySQL Create database   #创建业务系统库
2 MySQL Privilege user      #添加用户及权限
q Quit                                      #退出
———————————————-

 

#!/bin/bash

#################################################################################
# Filename: MySQL_Auth_DB_v1.2.sh
# Revision: V1.2
# Date: 2016/01/05
# Author: weijing
# Description: MySQL Building databases/Auth
#################################################################################

##################################################################################
######### MySQL Create database
##################################################################################

function create_database {

if [ "$1" == "Create-DB" ]

then

export dbname=''

getDBname() {
read -p "database name: " dbname
export dbname
}

getDBname

echo -e "create database $dbname character set =utf8" >> CreateDB_$dbname.sql

if [ $? -eq 0 ];then
echo -e "\033[32m Create Database $dbname Success! \033[0m"
else 
echo -e "\033[31m Create Database $dbname Failed! \033[0m"
fi


else
exit
fi

}

##################################################################################
######### Add privilege
##################################################################################

function Add_user_privilege {

if [ "$1" == "privilege" ]
then

export add_privilege=''
export add_user=''
export add_user_passwd=''
export dbname=''
export tbname=''
export authip=''


getAdd_privilege() {
read -p "add privilege like select,insert,update,delete or all privileges : " add_privilege
export add_privilege
}

getAdd_user() {
read -p "add user: " add_user
export add_user
}

getAdd_user_passwd() {
read -p "add user passwd: " add_user_passwd
export add_user_passwd
}

getDBname() {
read -p "access database name: " dbname
export dbname
}

getTBname() {
read -p "access table name: " tbname
export tbname
}

getAuthIP() {
read -p "auth ip: " authip
export authip
}


getAdd_privilege
getDBname
getTBname
getAuthIP
getAdd_user
getAdd_user_passwd


echo -e "grant $add_privilege on $dbname.$tbname to '$add_user'@'$authip' identified by '$add_user_passwd' " >> Add_Privilege_$dbname.sql

if [ $? -eq 0 ];then
echo -e "\033[32m Add Privileges user $add_user Success! \033[0m"
else 
echo -e "\033[31m Add Privileges user $add_user Failed! \033[0m"
fi

else
exit
fi


}

#######################################################################################################################
######### user input variable 
#######################################################################################################################

echo -e "\n\nnow start deploy app :"
echo "----------------------------------------------"
echo "1 MySQL Create database"
echo "2 MySQL Privilege user"
echo "q quit deploy"
echo -e "----------------------------------------------\n"

read -p "please choose deploy type operate number :" operate_number

operate_numbers="1 2 q"

while ! echo "$operate_numbers" | grep -w "$operate_number" > /dev/null
do
read -p "please choose deploy type operate number :" operate_number
done

if [ "$operate_number" == "q" ] 
then
exit 
fi

##############################################################
######### MySQL Create database
##############################################################

if [ "$operate_number" == "1" ] 
then 
echo -e "\n`date +%F" "%T` now MySQL Create database" 

create_database Create-DB

fi 

##############################################################
######### Add user privilege
##############################################################

if [ "$operate_number" == "2" ] 
then 
echo -e "\n`date +%F" "%T` now Add privilege"

Add_user_privilege privilege

fi

#################################################################################################
# end
#################################################################################################

发表评论