move to command folders
This commit is contained in:
10
commands/db/db-change-root-password.sh
Normal file
10
commands/db/db-change-root-password.sh
Normal file
@ -0,0 +1,10 @@
|
||||
|
||||
if [ -z "$1" ] && [ -z "$2" ]; then
|
||||
read -sp "Old Password: " oldPassword
|
||||
read -sp "New Password: " newPassword
|
||||
else
|
||||
oldPassword="$1"
|
||||
newPassword="$2"
|
||||
fi
|
||||
|
||||
mysql -uroot -p${oldPassword} -e "SET PASSWORD FOR root@'localhost' = PASSWORD('$newPassword');"
|
34
commands/db/db-init.sh
Normal file
34
commands/db/db-init.sh
Normal file
@ -0,0 +1,34 @@
|
||||
if [ "$1" == "-h" ]; then
|
||||
echo "Usage:"
|
||||
echo " ./db-setup.sh <rootPassword> <main-db-user> <main-db-user-password>"
|
||||
echo " or"
|
||||
echo " ./db-setup.sh"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ -z "$1" ] && [ -z "$2" ] && [ -z "$3" ]; then
|
||||
read -sp "Set root password: " rootPassword
|
||||
read -sp $'\n'"Confirm root password: " confirmPassword
|
||||
read -p $'\n'"Main Username: " MAINDB
|
||||
read -sp "Main user's password: " PASSWDDB
|
||||
else
|
||||
rootPassword="$1"
|
||||
confirmPassword="$1"
|
||||
MAINDB="$2"
|
||||
PASSWDDB="$3"
|
||||
fi
|
||||
|
||||
# Adapted from https://stackoverflow.com/questions/33470753/create-mysql-database-and-user-in-bash-script
|
||||
# create random password
|
||||
#PASSWDDB="$(openssl rand -base64 12)"
|
||||
|
||||
# replace "-" with "_" for database username
|
||||
#MAINDB=${USER_NAME//[^a-zA-Z0-9]/_}
|
||||
|
||||
mysql -uroot -p${rootPassword} -e "CREATE DATABASE ${MAINDB} /*\!40100 DEFAULT CHARACTER SET utf8 */;"
|
||||
mysql -uroot -p${rootPassword} -e "CREATE USER ${MAINDB}@'%' IDENTIFIED BY '${PASSWDDB}';"
|
||||
mysql -uroot -p${rootPassword} -e "GRANT ALL PRIVILEGES ON ${MAINDB}.* TO '${MAINDB}'@'%';"
|
||||
mysql -uroot -p${rootPassword} -e "FLUSH PRIVILEGES;"
|
||||
|
||||
|
||||
exit 0
|
52
commands/db/db-setup.sh
Normal file
52
commands/db/db-setup.sh
Normal file
@ -0,0 +1,52 @@
|
||||
if [ "$1" == "-h" ]; then
|
||||
echo "Usage:"
|
||||
echo " ./db-setup.sh <rootPassword> <main-db-user> <main-db-user-password>"
|
||||
echo " or"
|
||||
echo " ./db-setup.sh"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ -z "$1" ] && [ -z "$2" ] && [ -z "$3" ]; then
|
||||
read -sp "Set root password: " rootPassword
|
||||
read -sp $'\n'"Confirm root password: " confirmPassword
|
||||
read -p $'\n'"Main Username: " MAINDB
|
||||
read -sp "Main user's password: " PASSWDDB
|
||||
else
|
||||
rootPassword="$1"
|
||||
confirmPassword="$1"
|
||||
MAINDB="$2"
|
||||
PASSWDDB="$3"
|
||||
fi
|
||||
|
||||
export DEBIAN_FRONTEND="noninteractive"
|
||||
|
||||
if [ "$rootPassword" == "$confirmPassword" ]; then
|
||||
echo -e "mysql-server mysql-server/root_password password $rootPassword" | debconf-set-selections
|
||||
echo -e "mysql-server mysql-server/root_password_again password $rootPassword" | debconf-set-selections
|
||||
apt-get -y install mysql-server
|
||||
else
|
||||
echo "Passwords do not match cancelling the installation"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Adapted from https://stackoverflow.com/questions/33470753/create-mysql-database-and-user-in-bash-script
|
||||
# create random password
|
||||
#PASSWDDB="$(openssl rand -base64 12)"
|
||||
|
||||
# replace "-" with "_" for database username
|
||||
#MAINDB=${USER_NAME//[^a-zA-Z0-9]/_}
|
||||
|
||||
# mysql_secure_installation steps so you don't have too
|
||||
# https://bertvv.github.io/notes-to-self/2015/11/16/automating-mysql_secure_installation/
|
||||
mysql -uroot -p${rootPassword} -e "DELETE FROM mysql.user WHERE User='';" # remove anonymous users
|
||||
mysql -uroot -p${rootPassword} -e "DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost', '127.0.0.1', '::1');" # prevent root from logging in remotely
|
||||
mysql -uroot -p${rootPassword} -e "DROP DATABASE test;" # remove the public test database
|
||||
mysql -uroot -p${rootPassword} -e "DELETE FROM mysql.db WHERE Db='test' OR Db='test\_%';" # remove the public test database
|
||||
|
||||
# Setup the main database this machine will be used for
|
||||
mysql -uroot -p${rootPassword} -e "CREATE DATABASE ${MAINDB} /*\!40100 DEFAULT CHARACTER SET utf8 */;"
|
||||
mysql -uroot -p${rootPassword} -e "CREATE USER ${MAINDB}@'%' IDENTIFIED BY '${PASSWDDB}';"
|
||||
mysql -uroot -p${rootPassword} -e "GRANT ALL PRIVILEGES ON ${MAINDB}.* TO '${MAINDB}'@'%';"
|
||||
mysql -uroot -p${rootPassword} -e "FLUSH PRIVILEGES;"
|
||||
|
||||
exit 0
|
Reference in New Issue
Block a user