部署项目本地测试没事,服务器一直报错(可能是Linux的Mysql表名默认区分大小写,windows的mysql表名默认不区分大小写)
今天因为客户上传了一个错误的数据,因为我刚刚从服务器导出了一份最新的数据,所以我想偷下懒,就直接删除服务器的数据,再从本地导出一份数据再把这份数据导入到服务器,但直接就报错,本地测试一直不报错。之后弄了2个小时没搞懂是哪里错了。最终一个朋友给我个提示,服务器报错,就到服务器的控制台看看报什么错啊。我一下反应过来,使用 ttail -n 300 catalina.out 查看了下控制台,报没有
·
今天因为客户上传了一个错误的数据,因为我刚刚从服务器导出了一份最新的数据,所以我想偷下懒,就直接删除服务器的数据,再从本地导出一份数据再把这份数据导入到服务器,但直接就报错,本地测试一直不报错。之后弄了2个小时没搞懂是哪里错了。最终一个朋友给我个提示,服务器报错,就到服务器的控制台看看报什么错啊。我一下反应过来,
使用 t tail -n 300 catalina.out 查看了下控制台,报没有表,但我有这张表啊,一看服务气的是小写的表名,但找的是大写的表名,所以找不到,从而知道了张总为什么更我说过建表的时候一定要用小写的表名,因为
mysql 表名默认 windows不区分大小写 在linux区分大小写
mysql 8.0以上只能导出所有的表结构,重装MYSQL,修改
/etc/my.cnf 文件,添加
#修改MYSQL8.0以上配置文件,只能在MYSQL第一次启动之前修改(意味着启动之后就只能重装MYSQL),其余的需要清空所有的表,之后停止MYSQL,在修改
vim /etc/my.cnf
#不区分大小写 0代表区分大小写,1代表不区分
lower_case_table_names=0
建议:表名,字段名统一使用小写字母,多个单词用下划线分开;
更多推荐
已为社区贡献2条内容
所有评论(0)