MySQL踩坑:Linux系统下当表名大小写不一致时显示表不存在的问题

今天导入了一个项目,在配置好数据库后,运行该项目,显示表不存在,如下图所示

实际上这张表表是存在的

这个项目是我和几个小伙伴协同开发,他们拿到源代码后经过简单的数据库配置即可将项目运行起来,而我却出现了这个问题,经过查阅资料了解到以下信息。

MySQL在Windows下都不区分大小写,在Linux系统下数据库名、表名、列名、表别名大小写规则如下:

1、数据库名与表名严格区分大小写;

2、表别名严格区分大小写;

3、列名和列别名在所有情况下都是忽略大小写的;

4、变量名也是严格区分大小写的;

由此可见,由于我直接连接的就是我的云服务器上的MySQL数据库,服务器使用的是Linux系统,其他小伙伴都是直接在自己的Windows系统上部署的数据库,因此只有我出现了这个问题。

要解决这个问题,在MySQL配置文件,即/etc/my.cnf中,在[mysqld]后边添加lower_case_table_names=1 ,然后重启MySQL服务。

此时表名将不再对大小写敏感,重新运行项目,运行成功。

AnonyEast

一个爱折腾的技术萌新

留下你的评论

*评论支持代码高亮<pre class="prettyprint linenums">代码</pre>

相关推荐