S2JDBC から Amazon RDS の MySQL を UTF-8 で扱うには

Amazon RDS を初めて使って、文字化けからなかなか解放されなかったので、メモしておく。

DB Parameter Group の作成

まず、Amazon RDS には DB Parameter Group という設定グループがある。my.cnf に定義するような設定はこのグループに対して適用する。
DB Parameter Group に Character 関係の設定を UTF-8 にしたものを作っておき、DBインスタンスに適用する。

S2JDBC

これはS2JDBCというより、JDBC URLの設定だが characterEncoding=UTF-8 を付加する。

テーブル作成時に文字コードを指定

CREATE TABLE に DEFAULT CHARSET=utf8 を指定する。

※ちなみに MySQL のテーブル名は普通に使うと大文字小文字の区別がいるため、Entity クラスに @Table(name=小文字) のアノテーションを定義しておく。