mysql lower-case-table-names参数

来源:互联网 发布:韩信点兵java语言算法 编辑:程序博客网 时间:2024/04/28 15:06

今天遇到一个问题:

安装mysql数据库后,导入备份的sql文件,还原时数据库。修改程序代码配置文件jdbc.properties , 操作系统界面,提示USER表不存在,如下图:

经过再次确认数据库库中是存在该表的,在db中使用select  * from user可以正常查询。但是初步判断是因为表名大小写引起的问题。经过百度,得出以下解决方法:

vi /etc/my.cnf
在  [mysqld] 下增加:lower_case_table_names=1


以下是转载内容:

lower-case-table-names参数

线上有业务用到开源的产品,其中SQL语句是大小写混合的,而建表语句都是小写的,mysql默认设置导致这些执行失败。
就需要设置忽略大小写。设置lower-case-table-names=1,重启mysql实例生效。
这时就产生了另外一个问题,之前的大写字母的数据库名都失效了。都提示找不到数据库名。注释掉个lower-case-table-names=1.
则没有这个问题,因此这个问题肯定是lower-case-table-names参数引起的。

默认为0,大小写敏感。

设置1,大小写不敏感。


0 0
原创粉丝点击