HiveBrain v1.2.0
Get Started
← Back to all entries
snippetsqlModerate

How to set lowercase_table_name

Submitted by: @import:stackexchange-dba··
0
Viewed 0 times
lowercase_table_namesethow

Problem

I've been trying to setup lower_case_table_names for ages in MySQL 8.0 without success. What is the procedure to set this up in 8.0?

In previous versions of mysql I was able to override the variable in /etc/mysql/mysql.cnf by adding the following lines:

[mysql] 
lower_case_table_names = 1


But when I try to restart the server / service mysql does not restart.

In the past all mysql servers had this setting working fine I just don`t know how to do the same in 8.0.

Solution

The server variable lower_case_table_names is described in the relevant documentation page:

Identifier Case Sensitivity, where it also mentions:


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.

Some more details appear in the linked page about server variables:


It is prohibited to start the server with a lower_case_table_names setting that is different from the setting used when the server was initialized. The restriction is necessary because collations used by various data dictionary table fields are based on the setting defined when the server is initialized, and restarting the server with a different setting would introduce inconsistencies with respect to how identifiers are ordered and compared.

Context

StackExchange Database Administrators Q#209201, answer score: 11

Revisions (0)

No revisions yet.