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

mysql 8.0.11, mysql@5.7 5.7.22 (new formula) #27210

Closed
wants to merge 2 commits into from
Closed

mysql 8.0.11, mysql@5.7 5.7.22 (new formula) #27210

wants to merge 2 commits into from

Conversation

commitay
Copy link
Contributor

  • Have you followed the guidelines for contributing?
  • Have you checked that there aren't other open pull requests for the same formula update/change?
  • Have you built your formula locally with brew install --build-from-source <formula>, where <formula> is the name of the formula you're submitting?
  • Does your build pass brew audit --strict <formula> (after doing brew install <formula>)?

@commitay commitay changed the title mysql 8.0.11 mysql 8.0.11, mysql@5.7 5.7.22 (new formula) Apr 28, 2018
@commitay commitay added new formula PR adds a new formula to Homebrew/homebrew-core legacy Relates to a versioned @ formula labels Apr 28, 2018
@cristhiank
Copy link

Looking forward to this formula to be available. Thanks! (Y)

@commitay commitay requested a review from ilovezfs June 9, 2018 00:12
@Rajat-Ahuja1997
Copy link

When will this be merged?

@ilovezfs
Copy link
Contributor

Shipped! 🍪

@ilovezfs ilovezfs closed this in 396c7e9 Jun 13, 2018
@commitay commitay deleted the mysql-8.0.11 branch June 13, 2018 23:05
@mfraase
Copy link

mfraase commented Jun 14, 2018

MySQL 8.0.11 uses caching_sha2_password as the default authentication method (leave it to Oracle to do something like this in a point release, but there you have it).

So far, it breaks everything I've tried: phpMyAdmin, Nextcloud, and WordPress.

@ilovezfs
Copy link
Contributor

@mfraase I'm not sure what you mean by "point release" here. This was a major version upgrade.

@mfraase
Copy link

mfraase commented Jun 14, 2018

@ilovezfs My understanding is that MySQL 8.0.x prior to 8.0.11 did not use caching_sha2_password as the default authentication method. If I'm mistaken, my apologies; if not, my comment stands.

In any case, the outcome is the same: Homebrew pushed out MySQL 8.0.11 as an upgrade yesterday. It breaks everything I've tried.

@ilovezfs
Copy link
Contributor

Ah, I see. Did you figure out how to change the setting such that it works?

@mfraase
Copy link

mfraase commented Jun 14, 2018

@ilovezfs Sadly, no. I spent all day trying a variety of things and just rolled back to MySQL 5.7.22.

Disclosure: I'm a writer, editor, and UX practitioner; not a coder (nor much of a system administrator; my development/staging server is down and I could have sworn I had MySQL pinned in Homebrew, but didn't).

@cristhiank
Copy link

Hi @mfraase, you can disable the caching_sha2_password by setting the ––default-authentication-plugin= mysql_native_password option in the my.cnf or in the startup options.

https://mysqlserverteam.com/mysql-8-0-4-new-default-authentication-plugin-caching_sha2_password/

@mfraase
Copy link

mfraase commented Jun 14, 2018

Thanks @christhiank. Setting the default-authentication-plugin in my.cnf was the first thing I tried. It didn't work. I find this graf from the article you cite perplexing in the extreme:

User accounts already created in existing instances are not altered as a part of an upgrade. So, all existing user accounts continue to use the same authentication plugin that they used in e.g. MySQL 5.7. However, if you create a new user without changing –-default-authentication-plugin explicitly, caching_sha2_password is used as authentication mechanism for such users.

So, I take it existing user accounts continue to use MySQL 5.7.x authentication; newly created user accounts default to caching_sha2_password authentication. Fine if it worked. But in my experience it doesn't (existing user accounts are apparently "upgraded" to caching_sha2_password authentication (based on error log entries).

The article cited is specific to MySQL 8.0.4, so maybe the behavior changed in 8.0.11, although I don't see any mention of it in the 8.0.11 release notes:

https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-11.html

@mfraase
Copy link

mfraase commented Jun 18, 2018

Three step solution:

  1. Add to [mysqld] section of my.cnf file:

default-authentication-plugin=mysql_native_password

  1. At shell prompt:

mysql -u root -p

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '[password]';

exit

  1. Reboot server

Short version solution

Long version solution

@mfraase
Copy link

mfraase commented Jun 19, 2018

The solution provided above is partial, at best. In my experience MySQL 8.0.11 is not nearly ready for production (or even development) use.

@Homebrew Homebrew locked as off-topic and limited conversation to collaborators Jun 19, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
legacy Relates to a versioned @ formula new formula PR adds a new formula to Homebrew/homebrew-core
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants