まだ、自分の中では実績のないMySQL5ですがUTF8でページ作成していたときは問題なかったのがSJISでページ作成したら思ったとおり文字化け起こしました。結局は文字列の照合を全てbinaryにして解決しましたが、いろいろと改造してしまったので確定要素がない…。(ページ作成を落ち着いたらテーブル設定以外を元に戻してみます)
◆以下は落ち着いたら元に戻す項目
php.iniを導入して言語を日本語、システムの文字コードをSJISに設定して再起動
# cp php.ini-dist /usr/local/lib/php.ini
# ee /usr/local/lib/php.ini
編集項目
[mbstring]
mbstring.language = Japanese
mbstring.internal_encoding = SJIS
/etc/my.cnfにSJISの設定を追加
[mysqld]
default-character-set=sjis
[mysqldump]
default-character-set=sjis
[mysql]
default-character-set=sjis
と設定して再起動。
MySQLにログインしたあと下記のコマンドを発行して確認。
mysql> SHOW VARIABLES LIKE ‘character_set_%’;
+————————–+——-+
| Variable_name | Value |
+————————–+——-+
| character_set_client | sjis |
| character_set_connection | sjis |
| character_set_database | sjis |
| character_set_results | sjis |
| character_set_server | sjis |
| character_set_system | utf8 |
+————————–+——-+
6 rows in set (0.00 sec)
よくいろいろな薬を試して結果直ったけれど、どの薬が効いたのか分からない…そんな状況です。(多分、my.cnfやphp.iniの設定は不要だったきがしますが…)