您的位置:首页 > 数据库 > MySQL

linxu下设置mysql数据库不区分大小写

2018-03-18 16:26 253 查看
2017年3月31日18:15[WARN ] [2015-04-29 13:41:683] org.hibernate.util.JDBCExceptionReporter - SQL Error: 1146, SQLState: 42S02  [ERROR] [2015-04-29 13:41:683] org.hibernate.util.JDBCExceptionReporter - Table 'aa.columninfoTotal' doesn't exist  [ERROR] [2015-04-29 13:41:684] org.apache.struts2.dispatcher.DefaultDispatcherErrorHandler - Exception occurred during processing request: could not initialize a collection: [com.future.cms.pojo.Columninfo.columninfoTotals#36]  org.hibernate.exception.SQLGrammarException: could not initialize a collection: [com.future.cms.pojo.Columninfo.columninfoTotals#36] MySQL数据库从windows迁到Linux上,结果程序跑不起来了,不停提示“*** table doesn't exist”,查了一下,linux下默认mysql是区分大小写的,具体规则如下:MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:1、数据库名与表名是严格区分大小写的;2、表的别名是严格区分大小写的;3、列名与列的别名在所有的情况下均是忽略大小写的;4、变量名也是严格区分大小写的;MySQL在Windows下都不区分大小写。如果改成不区分大小写,修改、/etc/my.cnf,在[mysqld]后面加上lower_case_table_names=1,重启mysql服务即可。 方法二:修改程序,Hibernate映射的时候,.hbm.xml里面的映射的时候表名字用小写; 
原文引用 : <http://blog.csdn.net/estelle_belle/article/details/45365751>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: