MySQL因为区分大小写而引起找不到表

php中文网
发布: 2016-06-07 17:20:02
原创
1212人浏览过

开发一直在本地mysql数据进行,完成后测试连接LINUX服务器数据库,结果一直报错找不到表!另我纳闷的是服务器数据库里明明是建了

开发一直在本地mysql数据进行,完成后测试连接LINUX服务器数据库,结果一直报错找不到表!另我纳闷的是服务器数据库里明明是建了表的,用mysql控制台测试连接执行查询也没问题,可程序就是一直报错!

于是开始反复测试找问题,刚开始以为是驱动或mysql版本不匹配等引起的原因,但是重新写了个JDBC连接执行查询发现没问题!说明驱动没问题!于是怀疑连接池的问题,于是将程序里的连接改成新写的JDBC连接,仍然出错!这时候我都快疯了!于是将项目里的SQL语句拷贝出来一句放到新写的JDBC程序里去执行,终于出了同样的错。问题也一点点的浮出了水面!因为一直在项目里写SQL都是习惯了用大写,但是临时写的时候比较仓促一般都用小写,所以临时写的程序就可以执行,但是项目里的SQL却无法执行,因为刚开始一直想不到mysql会区分大小写,因为在自己机器上是没有问题的。后来查了资料发现,是因为操作系统的原因,,mysql在LINUX下默认是区分大小写的。下面我们就更改mysql配置让其不区分大小写:

让MYSQL不区分表名大小写的方法其实很简单:

  1.用ROOT登录,修改/etc/my.cnf

快写红薯通AI
快写红薯通AI

快写红薯通AI,专为小红书而生的AI写作工具

快写红薯通AI 57
查看详情 快写红薯通AI

  2.在[mysqld]下加入一行:lower_case_table_names=1

  3.重新启动数据库即可。

就这个小问题整整折腾了我3个多小时!NND,郁闷啊!问题总结在这里希望大家以后别走我这么多弯路!

linux

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号