Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Breaking changes between mysql:5.7.37 and mysql:5.7.38: folder /etc/mysql.conf.d is missing #876

Closed
head1328 opened this issue Jul 6, 2022 · 7 comments

Comments

@head1328
Copy link

head1328 commented Jul 6, 2022

There are changes in the configuration folders:

❯ docker run --rm -it mysql:5.7.37 bash -c "ls -lisa /etc/mysql"
total 24
4351268 4 drwxr-xr-x 4 root root 4096 Apr 20 10:05 .
4376366 4 drwxr-xr-x 1 root root 4096 Jul  6 08:43 ..
4351270 4 drwxr-xr-x 2 root root 4096 Apr 20 10:05 conf.d
4351274 0 lrwxrwxrwx 1 root root   24 Apr 20 10:05 my.cnf -> /etc/alternatives/my.cnf
4351275 4 -rw-r--r-- 1 root root  839 Aug  3  2016 my.cnf.fallback
4351276 4 -rw-r--r-- 1 root root 1200 Nov 29  2021 mysql.cnf
4351277 4 drwxr-xr-x 2 root root 4096 Apr 20 10:05 mysql.conf.d

❯ docker run --rm -it mysql:5.7.38 bash -c "ls -lisa /etc/mysql"
total 12
4362146 4 drwxr-xr-x 3 root root 4096 Jul  5 22:40 .
4376366 4 drwxr-xr-x 1 root root 4096 Jul  6 08:43 ..
4362147 4 drwxr-xr-x 2 root root 4096 Jul  5 22:40 conf.d

Did this happen on purpose?

@NeilMasters
Copy link

NeilMasters commented Jul 6, 2022

I have also seen this issue. Locked myself to 5.7.37 for now because we are appending some config changes to /etc/mysql/mysql.conf.d/sql_mode.cnf which obviously does not exist :D

There is no breaking changes noted https://dev.mysql.com/doc/relnotes/mysql/5.7/en/news-5-7-38.html#mysqld-5-7-38-deprecation-removal or anything to do with directory changes.

@arokettu
Copy link

arokettu commented Jul 6, 2022

It's likely this: #867

Check if using 5.7-debian explicitly solves your problem

@NeilMasters
Copy link

cheers for that @arokettu, using -debian fixed my specific issue.

@wglambert
Copy link

Copying comment from the other issue about the :latest variant changing to Oracle Linux #877 (comment)

The change was from #867
We don't have a great way of communicating changes to users outside of pull requests and commits in these repos, so to be aware of upcoming and past changes check out the PR's over at https://github.com/docker-library/official-images/issues?q=label%3Alibrary%2Fmysql+is%3Aclosed

A good practice to employ is to use a more specific tag that specifies the OS, and major.minor release numbers which are under "supported tags" https://hub.docker.com/_/mysql/

Nothing4You added a commit to Nothing4You/aiomysql that referenced this issue Jul 7, 2022
… remove our workaround for setting the socket path

with docker-library/mysql#867 images without distro tag are now built on oracle linux by default.
this change removed /etc/mysql/mysql.conf.d from the image, see also docker-library/mysql#876.
this also means we no longer need to work around the socket path being overridden in another config file and we can use the same logic as on all other images.
Nothing4You added a commit to aio-libs/aiomysql that referenced this issue Jul 7, 2022
… remove our workaround for setting the socket path (#811)

with docker-library/mysql#867 images without distro tag are now built on oracle linux by default.
this change removed /etc/mysql/mysql.conf.d from the image, see also docker-library/mysql#876.
this also means we no longer need to work around the socket path being overridden in another config file and we can use the same logic as on all other images.
@head1328
Copy link
Author

head1328 commented Jul 7, 2022

see last comment

Copying comment from the other issue about the :latest variant changing to Oracle Linux #877 (comment)

The change was from #867 We don't have a great way of communicating changes to users outside of pull requests and commits in these repos, so to be aware of upcoming and past changes check out the PR's over at https://github.com/docker-library/official-images/issues?q=label%3Alibrary%2Fmysql+is%3Aclosed

A good practice to employ is to use a more specific tag that specifies the OS, and major.minor release numbers which are under "supported tags" https://hub.docker.com/_/mysql/

closed.

@head1328 head1328 closed this as completed Jul 7, 2022
@jeff-h
Copy link

jeff-h commented Jul 12, 2022

In case it helps anyone else, the new location for my.cnf is /etc/my.cnf which contains !includedir /etc/mysql/conf.d/, so any custom config you might be supplying will need to move into /etc/mysql/conf.d/ if it's not there already.

mysqld --verbose --help will help you determine which paths are being searched for config files.

Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf

@tianon
Copy link
Member

tianon commented Jul 12, 2022

See also #888 🙈 ❤️

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants