Java(SAStruts) + MySQL 本番環境でSQLExceptionが発生する

Java(SAStruts) + MySQL 本番環境でSQLExceptionが発生する

エラーログに何も出力されていない為少々はまりましたが解決しました。

大ポカです。。。

Windowsでは大文字小文字の区別がありませんがLinux(CentOS)では区別があります。

知ってはいながら開発がずぼらになっていました。

SQLはSQLFileで管理していましたが今回はINSERT文だけServiceを利用して作成。

自分で書いたSQLはテーブル名が小文字でしたが、それ以外については大文字で実行されていました。

その為、テーブルが存在しないという判定をされていたようです。

解決策はいろいろで、最も妥当なのは「大文字小文字を区別なく実装する」ことだとは思いますが、
今回は時間の関係上MySQLの設定を修正しました。

my.cnf

に以下の1行を追加してください。

lower_case_table_names=1

これで無事解決しました。

mysqlカテゴリの最新記事