開發(fā)一直在本地mysql數(shù)據(jù)進行,完成后測試連接LINUX服務器數(shù)據(jù)庫,結果一直報錯找不到表!另我納悶的是服務器數(shù)據(jù)庫里明明是建了
開發(fā)一直在本地mysql數(shù)據(jù)進行,完成后測試連接LINUX服務器數(shù)據(jù)庫,結果一直報錯找不到表!另我納悶的是服務器數(shù)據(jù)庫里明明是建了表的,用mysql控制臺測試連接執(zhí)行查詢也沒問題,可程序就是一直報錯!
于是開始反復測試找問題,剛開始以為是驅(qū)動或mysql版本不匹配等引起的原因,但是重新寫了個JDBC連接執(zhí)行查詢發(fā)現(xiàn)沒問題!說明驅(qū)動沒問題!于是懷疑連接池的問題,于是將程序里的連接改成新寫的JDBC連接,仍然出錯!這時候我都快瘋了!于是將項目里的SQL語句拷貝出來一句放到新寫的JDBC程序里去執(zhí)行,終于出了同樣的錯。問題也一點點的浮出了水面!因為一直在項目里寫SQL都是習慣了用大寫,但是臨時寫的時候比較倉促一般都用小寫,所以臨時寫的程序就可以執(zhí)行,但是項目里的SQL卻無法執(zhí)行,因為剛開始一直想不到mysql會區(qū)分大小寫,因為在自己機器上是沒有問題的。后來查了資料發(fā)現(xiàn),是因為操作系統(tǒng)的原因,,mysql在LINUX下默認是區(qū)分大小寫的。下面我們就更改mysql配置讓其不區(qū)分大小寫:
讓MYSQL不區(qū)分表名大小寫的方法其實很簡單:
1.用ROOT登錄,修改/etc/my.cnf
2.在[mysqld]下加入一行:lower_case_table_names=1
3.重新啟動數(shù)據(jù)庫即可。
就這個小問題整整折騰了我3個多小時!NND,郁悶??!問題總結在這里希望大家以后別走我這么多彎路!
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com