Skip to content

Instantly share code, notes, and snippets.

@yuki777
Created July 29, 2013 15:21
Show Gist options
  • Save yuki777/6105095 to your computer and use it in GitHub Desktop.
Save yuki777/6105095 to your computer and use it in GitHub Desktop.
make db bash script.
#!/bin/bash
# check
if [ $# -ne 3 ]; then
echo "usage : /bin/bash make_db.bash {project} {password} {mysql_root_pass}"
echo "e.g. : /bin/bash make_db.bash ProjectA PWhoge MySQLRootPW"
exit 1
fi
# vars
project=$1
password=$2
mysql_root_pass=$3
# make database
mysql="mysql -uroot -p$mysql_root_pass mysql"
echo "create database $project DEFAULT CHARACTER SET utf8" | $mysql
echo "flush privileges" | $mysql
echo "insert into user (Host,User,Password)values('localhost','$project',password('$password'))" | $mysql
echo "flush privileges" | $mysql
echo "grant all on $project.* to $project@localhost" | $mysql
echo "update user set Reload_priv='Y',Super_priv='Y',File_priv='Y' where user='$project'" | $mysql
echo "flush privileges" | $mysql
# check
echo "exit" | mysql -u$project -p$password -hlocalhost $project
if [ $? -ne 0 ]; then
echo "Error. Mysql connect error."
exit 1
fi
mysqldump --single-transaction --default-character-set=utf8 -u$project -p$password $project > /tmp/$project.sql
if [ $? -ne 0 ]; then
echo "Error. Mysqldump error."
exit 1
fi
echo "You have successfully created database."
echo "mysql -u$project -p$password -hlocalhost $project"
exit 0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment