Skip to content

Commit 37981f6

Browse files
authored
Merge pull request #830 from infosiftr/sockets
Update socket location for mysql clients
2 parents 8494a5e + 9e0c503 commit 37981f6

6 files changed

+48
-0
lines changed

5.7/Dockerfile.oracle

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

5.7/docker-entrypoint.sh

Lines changed: 15 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

8.0/Dockerfile.oracle

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

8.0/docker-entrypoint.sh

Lines changed: 15 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

template/Dockerfile.oracle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ RUN set -eux; \
7878
grep -F 'socket=/var/lib/mysql/mysql.sock' /etc/my.cnf; \
7979
sed -i 's!^socket=.*!socket=/var/run/mysqld/mysqld.sock!' /etc/my.cnf; \
8080
grep -F 'socket=/var/run/mysqld/mysqld.sock' /etc/my.cnf; \
81+
{ echo '[client]'; echo 'socket=/var/run/mysqld/mysqld.sock'; } >> /etc/my.cnf; \
8182
\
8283
# make sure users dumping files in "/etc/mysql/conf.d" still works
8384
! grep -F '!includedir' /etc/my.cnf; \

template/docker-entrypoint.sh

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,18 @@ mysql_get_config() {
104104
# match "datadir /some/path with/spaces in/it here" but not "--xyz=abc\n datadir (xyz)"
105105
}
106106

107+
# Ensure that the package default socket can also be used
108+
# since rpm packages are compiled with a different socket location
109+
# and "mysqlsh --mysql" doesn't read the [client] config
110+
# related to https://github.com/docker-library/mysql/issues/829
111+
mysql_socket_fix() {
112+
local defaultSocket
113+
defaultSocket="$(mysql_get_config 'socket' mysqld --no-defaults)"
114+
if [ "$defaultSocket" != "$SOCKET" ]; then
115+
ln -sfTv "$SOCKET" "$defaultSocket" || :
116+
fi
117+
}
118+
107119
# Do a temporary startup of the MySQL server, for init purposes
108120
docker_temp_server_start() {
109121
if [ "${MYSQL_MAJOR}" = '5.7' ]; then
@@ -366,6 +378,7 @@ _main() {
366378
docker_temp_server_start "$@"
367379
mysql_note "Temporary server started."
368380

381+
mysql_socket_fix
369382
docker_setup_db
370383
docker_process_init_files /docker-entrypoint-initdb.d/*
371384

@@ -378,6 +391,8 @@ _main() {
378391
echo
379392
mysql_note "MySQL init process done. Ready for start up."
380393
echo
394+
else
395+
mysql_socket_fix
381396
fi
382397
fi
383398
exec "$@"

0 commit comments

Comments
 (0)