12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- #!/bin/bash
- CURRENT_DIR=$( cd "$(dirname "${BASH_SOURCE[0]}")" ; pwd -P )
- source ${CURRENT_DIR}/../common/common.sh
- read -r -p "请输入 Mysql root 密码:" MYSQL_ROOT_PASSWORD
- mysql --user="root" --password="${MYSQL_ROOT_PASSWORD}" -e "quit" >> ${LOG_PATH} 2>&1 || {
- ansi -n --bold --bg-red "密码不正确"
- exit 1
- }
- read -r -p "请输入要新建的用户名:" MYSQL_NORMAL_USER
- [[ $MYSQL_NORMAL_USER =~ ^[a-zA-Z\0-9_\-]+$ ]] || {
- ansi -n --bold --bg-red "用户名包含非法字符"
- exit 1
- }
- MYSQL_NORMAL_USER_PASSWORD=`random_string`
- read -r -p "是否创建同名数据库并赋予权限?[y/N] " response
- case "$response" in
- [yY][eE][sS]|[yY])
- CREATE_DB=1
- ;;
- *)
- CREATE_DB=0
- ;;
- esac
- mysql --user="root" --password="${MYSQL_ROOT_PASSWORD}" -e "CREATE USER '${MYSQL_NORMAL_USER}' IDENTIFIED BY '${MYSQL_NORMAL_USER_PASSWORD}';" >> ${LOG_PATH} 2>&1
- ansi -n --bold --green "用户创建成功";
- ansi --green --bold "用户名:"; ansi -n --bg-yellow --black ${MYSQL_NORMAL_USER}
- ansi --green --bold "密码:"; ansi -n --bg-yellow --black ${MYSQL_NORMAL_USER_PASSWORD}
- if [[ CREATE_DB -eq 1 ]]; then
- DATABASE_NAME=${MYSQL_NORMAL_USER}
- mysql --user="root" --password="${MYSQL_ROOT_PASSWORD}" -e "CREATE DATABASE \`${DATABASE_NAME}\`;" >> ${LOG_PATH} 2>&1
- mysql --user="root" --password="${MYSQL_ROOT_PASSWORD}" -e "GRANT ALL ON \`${DATABASE_NAME}\`.* TO '${MYSQL_NORMAL_USER}';" >> ${LOG_PATH} 2>&1
- mysql --user="root" --password="${MYSQL_ROOT_PASSWORD}" -e "FLUSH PRIVILEGES;" >> ${LOG_PATH} 2>&1
- fi
- ansi -n --bold --green "数据库 ${DATABASE_NAME} 创建成功";
|