Skip to content

Commit 7a87af0

Browse files
Istadortianon
authored andcommitted
Escape database underscore wildcard
if the $MYSQL_DATABASE environment variable contains underscores ("_") they are now escaped, so that the GRANT matches exactly the given database name.
1 parent fcc68c8 commit 7a87af0

File tree

4 files changed

+4
-4
lines changed

4 files changed

+4
-4
lines changed

.template.Debian/docker-entrypoint.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,7 @@ docker_setup_db() {
284284

285285
if [ -n "$MYSQL_DATABASE" ]; then
286286
mysql_note "Giving user ${MYSQL_USER} access to schema ${MYSQL_DATABASE}"
287-
docker_process_sql --database=mysql <<<"GRANT ALL ON \`$MYSQL_DATABASE\`.* TO '$MYSQL_USER'@'%' ;"
287+
docker_process_sql --database=mysql <<<"GRANT ALL ON \`${MYSQL_DATABASE//_/\\_}\`.* TO '$MYSQL_USER'@'%' ;"
288288
fi
289289

290290
docker_process_sql --database=mysql <<<"FLUSH PRIVILEGES ;"

5.6/docker-entrypoint.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,7 @@ docker_setup_db() {
284284

285285
if [ -n "$MYSQL_DATABASE" ]; then
286286
mysql_note "Giving user ${MYSQL_USER} access to schema ${MYSQL_DATABASE}"
287-
docker_process_sql --database=mysql <<<"GRANT ALL ON \`$MYSQL_DATABASE\`.* TO '$MYSQL_USER'@'%' ;"
287+
docker_process_sql --database=mysql <<<"GRANT ALL ON \`${MYSQL_DATABASE//_/\\_}\`.* TO '$MYSQL_USER'@'%' ;"
288288
fi
289289

290290
docker_process_sql --database=mysql <<<"FLUSH PRIVILEGES ;"

5.7/docker-entrypoint.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,7 @@ docker_setup_db() {
284284

285285
if [ -n "$MYSQL_DATABASE" ]; then
286286
mysql_note "Giving user ${MYSQL_USER} access to schema ${MYSQL_DATABASE}"
287-
docker_process_sql --database=mysql <<<"GRANT ALL ON \`$MYSQL_DATABASE\`.* TO '$MYSQL_USER'@'%' ;"
287+
docker_process_sql --database=mysql <<<"GRANT ALL ON \`${MYSQL_DATABASE//_/\\_}\`.* TO '$MYSQL_USER'@'%' ;"
288288
fi
289289

290290
docker_process_sql --database=mysql <<<"FLUSH PRIVILEGES ;"

8.0/docker-entrypoint.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,7 @@ docker_setup_db() {
284284

285285
if [ -n "$MYSQL_DATABASE" ]; then
286286
mysql_note "Giving user ${MYSQL_USER} access to schema ${MYSQL_DATABASE}"
287-
docker_process_sql --database=mysql <<<"GRANT ALL ON \`$MYSQL_DATABASE\`.* TO '$MYSQL_USER'@'%' ;"
287+
docker_process_sql --database=mysql <<<"GRANT ALL ON \`${MYSQL_DATABASE//_/\\_}\`.* TO '$MYSQL_USER'@'%' ;"
288288
fi
289289

290290
docker_process_sql --database=mysql <<<"FLUSH PRIVILEGES ;"

0 commit comments

Comments
 (0)