0
点赞
收藏
分享

微信扫一扫

linux shell脚本:创建数据库、数据库同名用户及赋权


调用脚本

如果mysql中已经有了一个mydb0831,会先drop掉,再创建一个空的mydb0831库,同时创建一个名为mydb0831的用户,对这个mydb0831库拥有所有权限。
如果机器里未安装mysql,脚本执行会报错。可以从其他相同操作系统安装了mysql的机器里/usr/bin/下复制mysql过来,赋予可执行权限,即可。

./create_db_mysql_remote.sh mydb0831

create_db_mysql_remote.sh 脚本内容

#!/bin/bash
 
HOSTNAME="192.168.150.123"                            #数据库Server信息
PORT="3306"
USERNAME="root"
PASSWORD="root"
 
DBNAME=$1                                              #要创建的数据库的库名称
#DBNAME="test_db_name"                                 #要创建的数据库的库名称
 
MYSQL_CMD="mysql -h${HOSTNAME}  -P${PORT}  -u${USERNAME} -p${PASSWORD}"
echo ${MYSQL_CMD}
 
echo "drop database ${DBNAME}"
create_db_sql="drop database IF EXISTS ${DBNAME}"
echo ${create_db_sql}  | ${MYSQL_CMD}                    #创建数据库                   
if [ $? -ne 0 ]                                                                                #判断是否创建成功
then
 echo "drop databases ${DBNAME} failed ..."
 exit 1
fi
 
echo "create database ${DBNAME}"
create_db_sql="create database IF NOT EXISTS ${DBNAME} DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci"
echo ${create_db_sql}  | ${MYSQL_CMD}                         #创建数据库                   
if [ $? -ne 0 ]                                                                                #判断是否创建成功
then
 echo "create databases ${DBNAME} failed ..."
 exit 1
fi
 
echo "create user ${DBNAME}"
create_db_sql="grant all privileges on ${DBNAME}.* to ${DBNAME}@'%'  identified by '123456'"
echo ${create_db_sql}  | ${MYSQL_CMD}                         #创建数据库                   
if [ $? -ne 0 ]                                                                                #判断是否创建成功
then
 echo "create user ${DBNAME} failed ..."
 exit 1
fi


举报

相关推荐

0 条评论