Can't install Moodle version 3.8.2 with MariaDB 10.3 and MySQL 8.0

Can't install Moodle version 3.8.2 with MariaDB 10.3 and MySQL 8.0

by Pranav Soni -
Number of replies: 7

Moodle installation checks for below 3 global variables values:

(1) innodb_file_format=Barracuda

(2) innodb_file_per_table = 1,

(3) innodb_large_prefix = `ON`

and installation fails in case above values not set.

Above 3 global variables are removed in MySQL 8.0 and MariaDB 10.3 (https://mariadb.com/kb/en/library/changes-improvements-in-mariadb-103/#system-variables), 

Hence Moodle 3.8.2 installation fails for MySQL 8.0 and MariaDB 10.3


Average of ratings: -
In reply to Pranav Soni

Re: Can't install Moodle version 3.8.2 with MariaDB 10.3 and MySQL 8.0

by Ken Task -
Picture of Particularly helpful Moodlers

from mysql client what do you get for:

mysql> show variables like 'innodb_file_per_table';

mysql> show variables like 'innodb_large_prefix';

mysql> show variables like 'innodb_file_format';

Since you know they need to be present and the values, could you not use the 'set' command?

'SoS', Ken

In reply to Ken Task

Re: Can't install Moodle version 3.8.2 with MariaDB 10.3 and MySQL 8.0

by Pranav Soni -
For MySQL 8.0, mysql client shows:

MySQL [(none)]> show variables like 'innodb_file_per_table';
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| innodb_file_per_table | OFF |
+-----------------------+-------+
1 row in set (0.007 sec)

MySQL [(none)]> show variables like 'innodb_large_prefix';
Empty set (0.005 sec)

MySQL [(none)]> show variables like 'innodb_file_format';
Empty set (0.007 sec)
In reply to Pranav Soni

Re: Can't install Moodle version 3.8.2 with MariaDB 10.3 and MySQL 8.0

by Pranav Soni -
For MariaDB 10.3 : All 3 global variables are removed (https://mariadb.com/kb/en/library/changes-improvements-in-mariadb-103/#system-variables)

For MySQL 8.0 : 2 Global variables innodb_file_format & innodb_large_prefix & are removed (https://dev.mysql.com/doc/refman/8.0/en/added-deprecated-removed.html#optvars-removed)

Note:
Same issue was reported in Tracker Refer # MDL-61702 (https://tracker.moodle.org/browse/MDL-61702) -  Can't install Moodle version > 3.1 with mariaDB version >= 10.3.1  which is Closed/Fixed for Moodle version 3.3.7, 3.4.4, 3.5.1
In reply to Pranav Soni

Re: Can't install Moodle version 3.8.2 with MariaDB 10.3 and MySQL 8.0

by Matteo Scaramuccia -
Picture of Core developers Picture of Peer reviewers Picture of Plugin developers

Hi Pranav,
could you issue the following SQL queries:

SHOW VARIABLES LIKE "%version%";

and:

SHOW TABLE STATUS FROM <your moodle DB>;

?

Could you post here the content of your config.php file, if any?
Please anonymize any sensitive content there e.g. IP addresses and credentials.

TIA,
Matteo

In reply to Matteo Scaramuccia

Re: Can't install Moodle version 3.8.2 with MariaDB 10.3 and MySQL 8.0

by Pranav Soni -

Hi Matteo,

Please find required detail in the file attached here.

TIA & Regards,

Pranav Soni

In reply to Pranav Soni

Re: Can't install Moodle version 3.8.2 with MariaDB 10.3 and MySQL 8.0

by Matteo Scaramuccia -
Picture of Core developers Picture of Peer reviewers Picture of Plugin developers

Hi Pranav,
now it's clearer, it's Azure Database For MySQL 8.0 which could be another business compared to MDL-61702 e.g. since it looks like - as per Moodle code - not a "plain" drop-in replacement of vanilla MySQL: look at MDL-58931 and MDL-63521, they should be part of your problem too - at least the latter.

Both issues are still open, looking for the right solution (or sponsors wink).

HTH,
Matteo

In reply to Matteo Scaramuccia

Re: Can't install Moodle version 3.8.2 with MariaDB 10.3 and MySQL 8.0

by Pranav Soni -
Hi Matteo,

Thanks for your reply. I'm in-between some testing and may further reply.

Thanks again and Regards,
Pranav