MYSQL5 及び PHP5 へのアップグレードの際に発生した文字化け対策の覚書

最終更新日: 2010年3月 7日 (日曜日) 05:35:17 PM

今使用しているホスティングサービスで、MYSQL5 & PHP5 へのアップグレードが行われた。予めアナウンスされていた為、GsBlog を UTF-8 にするなどの事前対策は施していたものの、いざアップグレードされてから確認してみると、有らん限りに表示されたエラーや、文字化けて表示された『???』の羅列に気が動転して、いい感じに頭の中が真っ白になった。興奮状態のまま MAMP での対処法を思い出し、my.cnf をアップロードしてみるも、「共用サーバだから MySQL の再起動は出来ないよう」と誰にともなくツッコミを入れて冷静さを取り戻す。復旧出来なければ閉鎖する覚悟で検索してみると、専用サーバーやローカルサーバーでの対処方法ばかりが見つかり殆ど役に立たなかった。仕方なく phpMyAdmin を眺めつつ、あれこれ操作してみると意外に呆気なく対処出来たので覚え書き。(作成日: 2009年9月24日 (木曜日) 11:30:33 AM)

続きを読む
文字化けた Hot Cat Query Fevers.

上へ

phpMyAdmin でテーブルを「表示」して確認。案の定、文字化け。

上へ

「構造」を見ると、照合順序が『latin1_swedish_ci』になっていた。

上へ

データベース全体の「構造」も『latin1_swedish_ci』。これを変更すべく「操作」をクリック。

上へ

変更前

変更後

一番下にある『照合順序』のプルダウンメニューを『latin1_swedish_ci』から『utf8_general_ci』へと変更する。

上へ

データベース自体が『utf8_general_ci』に変更された。

上へ

各テーブルを『utf8_general_ci』に変更しても、文字化けは直らなかったので潔く削除。

上へ

事前にバックアップしていた sql ファイルを「インポート」で実行。

上へ

データベース全体の「構造」が『utf8_general_ci』に統一された。

上へ

テーブルを「表示」して確認。問題なく読めるようになった。
教訓1
バックアップは大事。
教訓2
検索しても分からないときは、壊す覚悟、閉鎖する覚悟で色々試す。
教訓3
サーバーの引っ越しや環境移行に備えて、データベースに依存しない CMS の導入も検討する。例)紀永

Google Readerへ追加