Skip to content

Missing deprecated variables in mysql:8.4 on Drupal10 recipe #186

@bronius-congruity

Description

@bronius-congruity

Just wanted to drop this nugget in case it helps anyone. Or for someone to correct me where a simpler/more appropriate solution is available.

When jumping from mysql:8.0 to mysql:8.4 I hit an error like:

unknown variable 'default_authentication_plugin=mysql_native_password'.

I saw I had a little bit older version of lando and upgraded, now at:

lando version
v3.26.3

but, long story short, discovered I hadn't upgraded drupal10 recipe in .. ever:

> lando version --component @lando/drupal
v1.12.0

> lando plugin-add @lando/drupal
✔ Installed @lando/drupal@1.15.0 to /Users/bronius/.lando/plugins/@lando/drupal

lando version --component @lando/drupal
v1.15.0

which then unlocked:

unknown variable 'expire_logs_days=10'

which I overcame with a local mysqld cnf override like:

// @file .lando.yml
...
services:
  database:
    config:
      database: mysql84.cnf
...
// and @file mysql84.cnf
[mysqld]
# MySQL 8.4 compatible settings - no deprecated variables
binlog_expire_logs_seconds = 864000
# Remove any deprecated expire_logs_days setting
# expire_logs_days is not set (deprecated in MySQL 8.0.11, removed in 8.4)

By merely presenting a (mostly empty) conf file and referencing it, the recipe-set mysql conf value(s) are not set. Et voila. hth

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions