Tâche #29485
Scénario #29463: Préparer la version EOLE 2.8.0
Faire fonctionner MySQL sur EOLE 2.8.0
100%
Demandes liées
Révisions associées
eoleaaf : remove table update specific code
Ref: #29485
mysql_pwd.py : modify mysql password change commands for MySQL 8.0
Ref: #29485
Remove obsolete "NO_AUTO_CREATE_USER" SQL mode
Ref: #29485
eoleaaf : upgrade MySQL commands for EOLE 2.8.0
Ref: #29485
mysql_add.py : modify mysql password change commands for MySQL 8.0
Ref: #29485
controlevnc.sql : modify mysql password change commands for MySQL 8.0
Ref: #29485
Historique
#1 Mis à jour par Joël Cuissinat il y a plus de 4 ans
- Statut changé de Nouveau à En cours
- Assigné à mis à Joël Cuissinat
root@thot:~# tail -f /var/log/rsyslog/local/mysql-systemd-start/mysql-systemd-start.info.log 2020-01-21T10:25:37.517853+01:00 thot.ac-test.fr mysql-systemd-start[10282]: ERROR: Unable to start MySQL server: 2020-01-21T10:25:37.517985+01:00 thot.ac-test.fr mysql-systemd-start[10282]: 2020-01-21T09:25:37.510018Z 0 [ERROR] [MY-000077] [Server] /usr/sbin/mysqld: Error while setting value 'ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' to 'sql_mode'. 2020-01-21T10:25:37.518049+01:00 thot.ac-test.fr mysql-systemd-start[10282]: 2020-01-21T09:25:37.513954Z 0 [ERROR] [MY-010119] [Server] Aborting 2020-01-21T10:25:37.518120+01:00 thot.ac-test.fr mysql-systemd-start[10282]: Please take a look at https://wiki.debian.org/Teams/MySQL/FAQ for tips on fixing common upgrade issues. 2020-01-21T10:25:37.518188+01:00 thot.ac-test.fr mysql-systemd-start[10282]: Once the problem is resolved, restart the service.
D'après https://dev.mysql.com/doc/refman/8.0/en/mysql-nutshell.html#mysql-nutshell-deprecations :
Using GRANT to create users. Instead, use CREATE USER. Following this practice makes the NO_AUTO_CREATE_USER SQL mode immaterial for GRANT statements, so it too is removed, and an error now is written to the server log when the presence of this value for the sql_mode option in the options file prevents mysqld from starting.
#2 Mis à jour par Joël Cuissinat il y a plus de 4 ans
Malgré cette correction, ça ne démarre toujours pas...
En supprimant le fichier/template /etc/mysql/mysql.conf.d/mysqld.cnf, ça passe, il faudra mettre à niveau ce fichier !
#3 Mis à jour par Joël Cuissinat il y a plus de 4 ans
Sinon, la syntaxe pour le changement de mot de passe a encore évolué...
Cf. https://stackoverflow.com/questions/50691977/how-to-reset-the-root-password-in-mysql-8-0-11#51186648
# mysql --defaults-file=/etc/mysql/debian.cnf mysql mysql> UPDATE user SET authentication_string=PASSWORD('burp545') WHERE user='root'; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '('burp545') WHERE user='root'' at line 1
- dans /usr/share/eole/sbin/mysql_pwd.py, modifier (NB : vérifier l'hôte ?) :
SQL_CODE="""ALTER USER IF EXISTS '{1}'@'localhost' IDENTIFIED BY '{0}'; flush privileges;"""
- dans /usr/share/eole/applications/gen/eoleaaf.py (exemple) :
db_handler.simple_query("CREATE DATABASE eoleaaf CHARACTER SET utf8;") db_handler.simple_query("CREATE USER IF NOT EXISTS 'eoleaaf'@'localhost';") db_handler.simple_query("GRANT ALL PRIVILEGES ON eoleaaf.* to 'eoleaaf'@'localhost';") db_handler.simple_query("USE eoleaaf ;")
#4 Mis à jour par Joël Cuissinat il y a plus de 4 ans
Visiblement le mot clé MEMBER n'est plus autorisé...
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'member TEXT,
Mais ça devrait (re)changer avec la version 8.0.19 : https://dev.mysql.com/doc/refman/8.0/en/keywords.html
#5 Mis à jour par Joël Cuissinat il y a plus de 4 ans
- Statut changé de En cours à Résolu
- % réalisé changé de 0 à 100
#6 Mis à jour par Joël Cuissinat il y a environ 4 ans
- Statut changé de Résolu à En cours
#7 Mis à jour par Joël Cuissinat il y a environ 4 ans
- Lié à Scénario #29559: Corriger la mise en place de Bareos sur EOLE 2.8.0 ajouté
#8 Mis à jour par Joël Cuissinat il y a environ 4 ans
- Statut changé de En cours à Résolu
#9 Mis à jour par Joël Cuissinat il y a environ 4 ans
- Statut changé de Résolu à En cours
#10 Mis à jour par Joël Cuissinat il y a environ 4 ans
C'est pas encore ça sur Horus :
2020-02-05T14:06:21.201738Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.19-0ubuntu2) starting as process 5821 2020-02-05T14:06:21.996282Z 1 [ERROR] [MY-011087] [Server] Different lower_case_table_names settings for server ('1') and data dictionary ('0'). 2020-02-05T14:06:21.996897Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed. 2020-02-05T14:06:21.997341Z 0 [ERROR] [MY-010119] [Server] Aborting 2020-02-05T14:06:22.519504Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.19-0ubuntu2) (Ubuntu). 2020-02-05T14:06:23.241337Z 0 [Warning] [MY-010915] [Server] 'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release.
Visiblement, on ne peut plus passer "lower_case_table_names" à 1 sans tout réinitialiser : https://stackoverflow.com/questions/53103588/lower-case-table-names-1-on-ubuntu-18-04-doesnt-let-mysql-to-start
#11 Mis à jour par Joël Cuissinat il y a environ 4 ans
- Statut changé de En cours à Résolu
#12 Mis à jour par Joël Cuissinat il y a environ 4 ans
- Statut changé de Résolu à En cours
#13 Mis à jour par Joël Cuissinat il y a environ 4 ans
- Statut changé de En cours à Résolu
#14 Mis à jour par Joël Cuissinat il y a environ 4 ans
- Statut changé de Résolu à Fermé
- Restant à faire (heures) mis à 0.0