先日、LatitudeD400のテスト環境(CentOS5.3)でMovableTypeのバージョンアップテストをした際に、文字化けが発生・・・。
実施した手順は、こんな感じ。
- 本番環境と同一バージョンのMTファイルで環境構築
- 本番環境のサーバからphpMyAdminを使ってSQLファイルをエクスポート
- テスト環境のphpMyAdminでSQLをアップロード
- 文字化け発生
なお、本番環境の運用状態がそもそも変?
MTはUTF-8だけど、データベースの照合順序はEUCになってる?(本番環境のphpMyAdminでテーブルを参照すると文字化けしてる・・・)
SQLファイル開いて文字コードをUTF-8等の文字コードで再保存したり、本番環境のphpMyAdminでエクスポートする際の設定変えてみたり・・・。
半日以上、費やしました・・・。
Googleでも色々と検索しながら作業してたんですが、最後に見つけたのがこれ。
iandeth. – Movable Type + MySQL 4.1 を組み合わせると日本語が文字化けする不具合/障害の解決方法

色々書いてありましたが、参考にした部分は
4.2) Movable Type 3.2 以降の場合
MT3.2からは mt-config.cgi の
SQLSetNames 1設定を施す事で、上記 CGI 修正と同様の効果になります。
藁をもつかむ思いで、mt-config.cgiにSQLSetNames 1を記載したところ、、、、
あっさりと解決!!!
もう、びっくりですよ!!!
感謝感謝
本番環境がMySQL:4.0.24で、テスト環境がMySQL:5.0.77とバージョンが違うことが原因って感じですね。
■本番環境
MobvableType:4.27
PHP:4.4.9
phpMyAdmin:2.6.4-pl3
MySQL:4.0.24
■テスト環境
MobvableType:4.27
PHP:5.1.6
phpMyAdmin:2.11.9.5
MySQL:5.0.77