遊戲服務器在windows上開發和調試,但是生產需要到linux下.出現的情況是在windows下一切正常.但是部署到linux下各種表找不到.
問題查找:1. 是否是hibernate映射文件寫錯(排除) 2.是否是表名字寫錯(排除) 3.測試linux下鏈接windos數據庫->測試正常(確定原因)
原因:linux下mysql區分大小寫(大小寫敏感) 因此會出現各種表找不到.
解決辦法:
MySQL在Linux下采用 rpm方式安装后默认是:数据库名与表名\表的别名\变量名是严格区分大小写
修改大小写的方法:
1.用root帐号登录,在/etc/my.cnf 或 /etc/mysql/my.cnf中的[mysqld]后添加lower_case_table_names=1
隨帶把數據庫默認編碼修改為utf8
重啟服務器 測試鏈接. 正常ok