最近在linux服务器上面部署一个javaweb的项目,报出一些奇怪的错误,拉到报错信息的最下面显示mysql数据库的某个表找不到,可以在windows上面是能正常运行的。
最后发现原来是linux服务器的mysql默认情况下表是区分大小写的,而windows则不区分大小写。
解决方法如下:
打开mysql的配置文件 vi /etc/my.cnf
将这句加到[mysqld]结点下面,表示不区分大小写 lower_case_table_names=1
保存文件,重启mysql即可
摘抄于网上
MYSQL在LINUX下数据库名、表名、列名、别名大小写规则如下:
1.数据库名与表名是严格区分大小写的
2.表的别名是严格区分大小写的
3.列名与列的别名在所有的情况下均是忽略大小写的
4.变量名也是严格区分大小写的