From 4a0ea6cb7e197caff86af37abc6b7e9ff64ac2d8 Mon Sep 17 00:00:00 2001 From: a-sansara Date: Thu, 28 Jul 2016 14:48:29 +0200 Subject: [PATCH] mysql : fix init create user --- pluie/alpine-mysql/install.d/40-mysql-fix.sh | 2 ++ pluie/alpine-mysql/pre-init.d/10-db.sh | 20 ++++++++++++-------- 2 files changed, 14 insertions(+), 8 deletions(-) create mode 100644 pluie/alpine-mysql/install.d/40-mysql-fix.sh diff --git a/pluie/alpine-mysql/install.d/40-mysql-fix.sh b/pluie/alpine-mysql/install.d/40-mysql-fix.sh new file mode 100644 index 0000000..6811c4f --- /dev/null +++ b/pluie/alpine-mysql/install.d/40-mysql-fix.sh @@ -0,0 +1,2 @@ +chown -R root:root /scripts/ +rm -f /scripts/pre-init.d/50-example.sh diff --git a/pluie/alpine-mysql/pre-init.d/10-db.sh b/pluie/alpine-mysql/pre-init.d/10-db.sh index fe5ce94..35f6539 100644 --- a/pluie/alpine-mysql/pre-init.d/10-db.sh +++ b/pluie/alpine-mysql/pre-init.d/10-db.sh @@ -30,19 +30,23 @@ GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; UPDATE user SET password=PASSWORD("$MYSQL_ROOT_PASSWORD") WHERE user='root'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION; UPDATE user SET password=PASSWORD("") WHERE user='root' AND host='localhost'; -FLUSH PRIVILEGES; EOF if [ ! -z "$MYSQL_DATABASE" ]; then - echo "[[ Creating DB : $MYSQL_DATABASE ]]" + echo "[[ CREATE DATABASE $MYSQL_DATABASE ]]"; echo "CREATE DATABASE IF NOT EXISTS \`$MYSQL_DATABASE\` CHARACTER SET utf8 COLLATE utf8_general_ci;" >> $tfile - - if [ "$MYSQL_USER" != "" ]; then - echo "[[ Creating user : $MYSQL_USER ]]" - echo "GRANT ALL ON \`$MYSQL_DATABASE\`.* to '$MYSQL_USER'@'%' IDENTIFIED BY '$MYSQL_PASSWORD';" >> $tfile + fi + if [ "$MYSQL_USER" != "" ] && [ "$MYSQL_USER" != 'root' ]; then + echo "[[ CREATE USER $MYSQL_USER ]]"; + echo " +CREATE USER '$MYSQL_USER'@'localhost' IDENTIFIED BY '$MYSQL_PASSWORD'; +CREATE USER '$MYSQL_USER'@'%' IDENTIFIED BY '$MYSQL_PASSWORD';" >> $tfile + if [ ! -z "$MYSQL_DATABASE" ]; then + echo " +GRANT ALL ON \`$MYSQL_DATABASE\`.* to '$MYSQL_USER'@'localhost' IDENTIFIED BY '$MYSQL_PASSWORD'; +GRANT ALL ON \`$MYSQL_DATABASE\`.* to '$MYSQL_USER'@'%' IDENTIFIED BY '$MYSQL_PASSWORD';" >> $tfile fi fi - - /usr/bin/mysqld --user=mysql --bootstrap --verbose=0 < $tfile + /usr/bin/mysqld --user=mysql --bootstrap --skip-grant-tables=0 --verbose=0 < $tfile rm -f $tfile fi