最終更新日: 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 の導入も検討する。例)紀永