Hasta ahora, puedo hacer que funcione con una solución alternativa (originalmente publiqué en askubuntu
):reiniciando MySQL con el nuevo valor para lower_case_table_names
después de su instalación. Los siguientes pasos se aplican a una nueva instalación. Si ya tiene datos en una base de datos, expórtelos primero para volver a importarlos más tarde:
- Instalar MySQL:
sudo apt-get update sudo apt-get install mysql-server -y
- Detener el servicio MySQL:
sudo service mysql stop
- Elimine el directorio de datos de MySQL:
sudo rm -rf /var/lib/mysql
- Vuelva a crear el directorio de datos de MySQL (sí, no es suficiente simplemente eliminar su contenido):
sudo mkdir /var/lib/mysql sudo chown mysql:mysql /var/lib/mysql sudo chmod 700 /var/lib/mysql
- Añadir
lower_case_table_names = 1
al[mysqld]
sección en/etc/mysql/mysql.conf.d/mysqld.cnf
. - Reiniciar MySQL con
--lower_case_table_names=1
:sudo mysqld --defaults-file=/etc/mysql/my.cnf --initialize --lower_case_table_names=1 --user=mysql --console
- Inicie el servicio MySQL:
sudo service mysql start
- Recupere la nueva contraseña generada para el usuario de MySQL
root
:sudo grep 'temporary password' /var/log/mysql/error.log
- Cambiar la contraseña del usuario de MySQL
root
ya sea por:
y ejecutando:sudo mysql -u root -p
después, O llamando al script de "fortalecimiento" de todos modos:ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPa$$w0rd';
sudo mysql_secure_installation
Después de eso, puede verificar los lower_case_table_names
configuración ingresando el shell de MySQL:
sudo mysql -u root -p
y ejecutando:
SHOW VARIABLES LIKE 'lower_case_%';
Salida esperada:
+------------------------+-------+
| Variable_name | Value |
+------------------------+-------+
| lower_case_file_system | OFF |
| lower_case_table_names | 1 |
+------------------------+-------+