Jusqu'à présent, je peux le faire fonctionner avec une solution de contournement (j'ai initialement posté sur askubuntu
) :en réinitialisant MySQL avec la nouvelle valeur de lower_case_table_names
après son installation. Les étapes suivantes s'appliquent à une nouvelle installation. Si vous avez déjà des données dans une base de données, exportez-les d'abord pour les réimporter plus tard :
- Installer MySQL :
sudo apt-get update sudo apt-get install mysql-server -y
- Arrêtez le service MySQL :
sudo service mysql stop
- Supprimez le répertoire de données MySQL :
sudo rm -rf /var/lib/mysql
- Recréer le répertoire de données MySQL (oui, il ne suffit pas de supprimer simplement son contenu) :
sudo mkdir /var/lib/mysql sudo chown mysql:mysql /var/lib/mysql sudo chmod 700 /var/lib/mysql
- Ajouter
lower_case_table_names = 1
au[mysqld]
section dans/etc/mysql/mysql.conf.d/mysqld.cnf
. - Réinitialisez MySQL avec
--lower_case_table_names=1
:sudo mysqld --defaults-file=/etc/mysql/my.cnf --initialize --lower_case_table_names=1 --user=mysql --console
- Démarrez le service MySQL :
sudo service mysql start
- Récupérer le nouveau mot de passe généré pour l'utilisateur MySQL
root
:sudo grep 'temporary password' /var/log/mysql/error.log
- Changer le mot de passe de l'utilisateur MySQL
root
soit par :
et en exécutant :sudo mysql -u root -p
ensuite, OU en appelant quand même le script "hardening" :ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPa$$w0rd';
sudo mysql_secure_installation
Après cela, vous pouvez vérifier les lower_case_table_names
paramètre en entrant dans le shell MySQL :
sudo mysql -u root -p
et en exécutant :
SHOW VARIABLES LIKE 'lower_case_%';
Sortie attendue :
+------------------------+-------+
| Variable_name | Value |
+------------------------+-------+
| lower_case_file_system | OFF |
| lower_case_table_names | 1 |
+------------------------+-------+