mysql> show global variables like '%lower_case%';
+------------------------+-------+
| Variable_name | Value |
+------------------------+-------+
| lower_case_file_system | OFF |
| lower_case_table_names | 0 |
+------------------------+-------+
2 rows in set (0.08 sec)
如上配置
lower_case_file_system off 说明大小写是敏感的,注意该变量不可以修改,只是告诉你当前操作系统对于mysql的配置是否大小写敏感。
lower_case_table_names 0 是对数据表名不做转换,
如果是1 则会将数据表转换为小写 然后在进行操作。
综上,
具体解决方案
找到mysql的配置文件my.cnf
在[mysqld]
添加一行
lower_case_table_names=1
就可以了。
如果是新创建的配置文件。别忘记 添加[mysqld] 否则mysql重启失败。
具体怎么查到my.cnf的安装位置
使用命令:ps aux|grep mysql|grep ‘my.cnf’
如果没有没有输出内容则是使用默认配置位置
默认配置my.cnf位置
使用命令:mysql --help|grep ‘my.cnf’ (查看默认配置位置)
/etc/my.cnf、/etc/mysql/my.cnf、 /usr/local/etc/my.cnf、 ~/.my.cnf
顺序排前的优先
这篇博客介绍了MySQL中lower_case_file_system和lower_case_table_names变量的含义,这两个变量影响了数据库对大小写的处理。当lower_case_file_system为OFF时,系统对文件名大小写敏感,lower_case_table_names为0表示表名保持原始大小写。为使表名不区分大小写,需在my.cnf配置文件的[mysqld]部分添加'lower_case_table_names=1'。如果找不到my.cnf,可以通过命令查找默认配置路径。修改配置后重启MySQL服务即可实现表名大小写不敏感。
1312

被折叠的 条评论
为什么被折叠?



