mysql不区分大小写配置

一、背景

在默认情况下,MySQL是大小写敏感的。这意味着在查询表名、列名或关键字时,必须精确匹配大小写。然而,在某些情况下,我们可能希望数据库忽略大小写,以便更方便地进行操作。

一、查看当前设置

show variables like ‘%lower%’;

 

说明:

lower_case_table_names 这个参数:

0: 表示区分大小写

1:表示不区分大小写

我截图的部分,已经设置好1了,所以是不区分大小写的 。

如果,你查看的是0的话,改如何进行配置呢?请接着看下面的文章。

二、临时修改设置

 在MySQL中,可以通过设置,lower_case_table_names 参数来临时配置大小写无关。

该参数控制了数据库对象(表名、列名、索引等)的大小写处理方式。

默认情况下,lower_case_table_names 参数的值为0,表示大小写敏感。要将大小写处理方式修改为忽略大小写,可以将 lower_case_table_names 参数的值设置为1。

 设置方法如下:

-- 引用形式的描述信息:修改lower_case_table_names参数,使数据库对象的大小写处理方式变为忽略大小写

SET GLOBAL lower_case_table_names = 1 

注意:这种配置方式,只对当前会话有效。当mysql重启时,配置将修改为默认值。 

所以,如果想设置为永久生效的话,接着往下看。

三、永久修改设置

 这种方式是,修改mysql的配置文件。一般在/etc/my.cnf文件中,找到[mysqld]部分,在后面追加如下内容:

[mysqld]
lower_case_table_names = 1

修改后,保存。然后重启mysql服务器。