为了方便测试组人员测试,今天测试组的人重新搭了一个仅供测试人员操作数据库。当项目运行起来的时候,发现很多地方sql都报视图不存在。
可是登录数据库时发现库中存在那些数据库。上网查询时发现很多人解释说是因为当前连接用户没有权限导致的。但是按照网上的解决方案加上权限后
sql还是报视图不存在。最终问了公司大神后才发现是因为mysql大小写敏感问题。
mysql在windows下是不区分大小写的,但在linux下,默认情况是区分表名大小写,不区分列名大小写。
解决mysql大小写的问题:
在/etc/my.cnf中的[mysqld]后添加lower_case_table_names=1,重新启动mysql服务 就好了。
lower_case_table_names=0 其中0:表示区分大小写;1:不区分大小写