简易mysql建表和初始化shell脚本
很简单的一个功能,当做shell脚本的学习笔记吧,贴代码如下:
#!/bin/sh
# cloud guarantee for jbb's database create and init script
echo "start to create database....."
#define database attributes
DATABASE_HOST=192.168.34.250
DATABASE_PORT=3306
DATABASE_USERNAME=root
DATABASE_PWD=root
#set base dir
BASE_DIR="./"
echo "the execute base dir is ${BASE_DIR}"
echo "database info ip: ${DATABASE_HOST} ,port: ${DATABASE_PORT} ,user: ${DATABASE_USERNAME}, password: ${DATABASE_PWD},and login..."
CREATE_FOLDER="./sql/create"
INIT_FOLDER="./sql"
#do mysql connect, the database
function do_mysql_sql_action() {
if [ $2 == "create" ]; then
echo "create database and table,the sql file path is `basename $1`"
mysql -h$DATABASE_HOST -u$DATABASE_USERNAME -p$DATABASE_PWD < $1
elif [[ $2 == "init" ]]; then
echo "init data,the sql file path is `basename $1`"
mysql -h$DATABASE_HOST -u$DATABASE_USERNAME -p$DATABASE_PWD < $1
fi
}
#create database and table
for createFile in ${CREATE_FOLDER}/*
do
if [ -f $createFile ]; then
chmod -x $createFile
do_mysql_sql_action $createFile "create"
fi
done
echo "create database and table finish"
#init base data for system init
for initFile in ${INIT_FOLDER}/*
do
if [ -f $initFile ]; then
chmod -x $initFile
do_mysql_sql_action $initFile "init"
fi
done
echo "init base data for system init finish"