一、查看配置
SHOW GLOBAL VARIABLES LIKE "%lower%"
lower_case_file_system 可以忽略,表示系统文件是否大小写敏感,只读参数,无法修改。
lower_case_table_names 表示表名是否大小写敏感,可以修改。
lower_case_table_names = 1时,mysql会先把表名转为小写,再执行操作。
lower_case_table_names = 0时,mysql会根据表名直接操作,大小写敏感。
二、默认规则
1.Linux
MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:
(1)、库名与表名是严格区分大小写的;
(2)、表的别名是严格区分大小写的;
(3)、变量名也是严格区分大小写的;
(4)、列名与列的别名在所有的情况下均是忽略大小写的;
2.windows
MySQL在Windows下都不区分大小写。
三、设置方法
1.Linux
用root帐号登录后,在/etc/my.cnf
中的[mysqld]
后添加添加
#不区分表名大小写;
lower_case_table_names=1
其中 0:区分大小写,1:不区分大小写
重启MYSQL服务,这时已设置成功:不区分表名的大小写;
2.windows(不建议修改)
在my.ini
文件里面的mysqld部分
加入
# 区分大小写
lower_case_table_names=0
修改了容易启动报错