Mysql 5.7 表名大写遇到的坑

环境

数据库从Mysql5.6导出后导入到Mysql5.7,操作系统是 Centos7

问题

在导入脚本中表名都是大写,导入后无论是命令行、navicat、还是Java代码,均提示表不存在。

Table 'XXX' doesn't exist

解决

原因是安装mysql5.7版本后,linux环境下默认是大小写敏感的。

主要是 lower_case_table_names=1 这个参数

把它加入到 my.cnf 的 [mysqld] 下面,然后重启Mysql。

但是此时会发现重启后,还是没有解决问题。

原因是大写表名是在之前就已经导入了,此时需要将所有表名中的大写字母改成小写!

这些都完成后,数据库中表名均已改为小写,此时Sql里大小写的表名均可识别

发布了24 篇原创文章 · 获赞 74 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/u011177064/article/details/104173416