How does MySQL8 make table names case insensitive?

just installed MySQL8,. The installation process went well, but after the configuration file setting table name is case-insensitive lower_case_table_names=1 , start the error

2018-04-21T07:11:57.780537Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.11)  MySQL Community Server - GPL.
2018-04-21T07:11:58.115925Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.11) starting as process 3280
2018-04-21T07:11:58.377514Z 1 [ERROR] [MY-011087] [Server] Different lower_case_table_names settings for server ("1") and data dictionary ("0").
2018-04-21T07:11:58.377736Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.
2018-04-21T07:11:58.377782Z 0 [ERROR] [MY-010119] [Server] Aborting
2018-04-21T07:11:59.809504Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.11)  MySQL Community Server - GPL.

I"ve tried to set it to 0 and 2, but it can"t be set to 1.

Mar.10,2021

encounter the same problem, look through the MySQL official document and find

lower_case_table_names can only be configured when initializing the server. Changing the lower_case_table_names setting after the server is initialized is prohibited.

Don't count on it. Change it

.

after an attempt, it is valid to modify my.cnf
and then initialize the database only after the installation is complete and before initializing the database.


if you don't care about data, delete data directly
1 stop MySQL
2 delete MySQL data / var/lib/mysql
3 modify the lower_case_table_names = 1
4 start mysql
4 get


speaking, I am a member of the docker Party. Give me a piece of my own advice:

use docker mysql image

configuration and startup are simple, and you can start as many as you want. Please refer to my blog post:
Docker about the use of mysql images

Menu