Drupal 10, the latest version of the open-source digital experience platform with even more features, is here.A first issue has been opened with the 'Ubuntu 20.04 LTS' tag ... #3145881: User creation has changed in MySQL 8.0
Would be nice if we could support it in the next release...
This is a meta ticket. See the "Child issues" block on the right for remaining tasks. Do not discuss those issues in there unless they are of a meta nature.
| Comment | File | Size | Author |
|---|---|---|---|
| #11 | support-ubuntu2004-3145927-10.patch | 5.34 KB | doka |











Comments
Comment #2
helmo CreditAttribution: helmo commentedI added a CI test to provision ... https://gitlab.com/aegir/provision/-/jobs/582055388
It seems to be failing on the php packages we require from the debian/control file...
The Mysql issue might not be visible here as this test currently uses MariaDB ... maybe we should add an extra test for mysql.
Comment #3
colanThat's a good idea. While I'd prefer to use MariaDB, Canonical supports only the MySQL package. I may not be the only one preferring it for that reason.
Here are the errors:
php-xmlandphp-mysqlare listed in there. Why aren't they being pulled in automatically as dependencies?Comment #4
helmo CreditAttribution: helmo commentedSee https://gitlab.com/aegir/provision/-/jobs/601841502
If someone has time to dig into this ... a good place to start would be in a test vm to run the ci-aegir-dev-install-apt-ubuntu-focal.sh script from that branch(the one on the main repo uses mariaDB for 20.04).
Comment #5
jjflynn22 CreditAttribution: jjflynn22 commentedChiming in here with my experience just now with Ubuntu 20.04 (focal).
I'll paste my EXACT install steps below but the problem that I can't seem to get over with the usual mystical workarounds is:
I tried all the usual suspects such as not running the "mysql_secure_installation" command and also making sure that the default mysql 8.0 default_authentication_plugin= mysql_native_password.
Still seem to be stuck here. I tried pre-installing drush 8, drush 9 and drush 10 all with the same error. There was some drush chatter in a bug submission about this but not sure if it is related. Drush does not grant access to SQL user
Here are my exact steps from a fresh 20.04 install
Comment #6
colanThat certainly looks like #3145881: User creation has changed in MySQL 8.0.
Comment #7
agaq CreditAttribution: agaq as a volunteer commentedIf that can help:
I cloned an Ubuntu 18.04 VM with a functioning aegir 3.186 installation and upgraded it to Ubuntu 20.04 using
$ sudo do-release-upgrade -d.The upgrade ran smoothly without any error or warning I could see.
When I restart the upgraded VM:
1) it sends me every minute by email the following error message:
2) When I direct a browser to the AEGIR hostmaster web UI, I get the following error message:
Comment #8
doka CreditAttribution: doka commentedDrupal 7 needs a patch to run on MySQL 8. This patch also resolves last issue of #7
Comment #9
doka CreditAttribution: doka commentedOther option could be to override sql_mode options in settings, see i.e.: https://www.drupal.org/project/drupal/issues/2939760
Comment #10
doka CreditAttribution: doka commentedI've done couple of tests on this branch, and getting to run Aegir3 on Ubuntu 20.04 with this patch.
MySQL8 support of Drupal 7 still needs to be incorporated here, see my previous comments.
Contents of the patch:- Merged patch of https://www.drupal.org/project/provision/issues/3145881#comment-13750463 into this branch
- debian/aegir3-hostmaster.postinst has to be changed, to adapt DB user creation also here, using code from https://www.drupal.org/project/provision/issues/3145881#comment-13750463
- scripts/ci-aegir-dev-install-apt-ubuntu-focal.sh needed also some clean-up, in particular to add sudo to debconf-set-selections, and set a more recent version of drush, to support for PHP4
Comment #11
doka CreditAttribution: doka commentedComment #12
doka CreditAttribution: doka commentedAegir3 will need a more recent drush version to run on PHP 7.4. Consider this patch here.
Workround is to manually set drush version via debconf, before installing the aegir packages:
Comment #13
doka CreditAttribution: doka commentedDrupal 7 needs a core patch to support MySQL 8. The patch is there, but not yet committed in core. Without this patch Aegir cannot be installed with MySQL 8, or on a default Ubuntu 20.04 setup.
Consider this patch to get a workaround in Aegir, until the core patch gets into Drupal 7. It pins Drupal core and deploys core patch via makefiles of Provison.
Comment #14
llamechSince the last update to this ticket, Drupal has added support for MySQL 8.
I've now successfully tested the Provision patch for User creation on #3145881: User creation has changed in MySQL 8.0 with:
Should/could someone also update #3168480: Include Drupal 7 core support for MySQL 8, since no workaround for MySQL 8 is necessary once the above patch is accepted?
Also relevant, this ticket about updating drush: #3166952: update drush version in debian package
Comment #15
colanAdded child issues and updated their states, and removed duplicate related ones. Let's keep child-ticket discussions in their respective tickets from now on.
Once those are closed, we can close this one too.
Comment #16
llamechAdded #3209815: Check that socket file actually exists when determining FPM mode re. FPM socket/port mode detection. Please review.
Comment #17
colanAdded #3246691: Create an Aegir 3.20 release for recent stable Debian & Ubuntu LTS as a child issue.
Comment #18
doka CreditAttribution: doka commentedFor documentation and when planning Aegir migration paths: Aegir won't work with older PHP versions (7.3 and below) together with MySQL 8, since first PHP 7.4 has support for default MySQL 8 authentication method. See: https://stackoverflow.com/a/50027581/1509771