メンテナンスのお知らせの続き。
新たにエントリに起こすほどのことでもないんだけど、ちゃんと動いてるのを確認したかっただけなのでいいよね。
と、これだけではホントに意味がないので、MySQLを4から5にする上でつまづいた点について少々。
- データの多いテーブル
- MovableTypeで使ってるテーブルだけならなんてことはなかったんですが、増田関連のデータは少々容量が大きくて、さくらインターネット標準のDB操作ツールである、phpMyAdminのインポートは8MB程度までしか受け付けてくれないと書いてあるもので、エクスポートしたデータを分割するのが面倒でした。
- データベースの文字コード設定
- インポートをする前に、データベースの照合順序をutf8_general_ciに変更しときましょう。さらにエクスポートしたSQLファイルの文字コードがutf-8になっているかどうかを確認し、なっていなければutf-8で保存しなおします。さらに、
/*!40101 SET NAMES ujis */
などと書いてある行を消してしまいましょう。コメントだからいいじゃんとか甘いこと言ってちゃ駄目です。消しましょう。実は日本語(というかascii以外)が含まれてるテーブルだけでもいいのですが。 - DB接続設定
- データベースのサーバ名が変わるので、MovableTypeであればmt-config.cgi、DBに接続しているWebアプリがあれば、接続先を変更しましょう。これ、どっかにまとめて書いとくと楽だなぁ、なんて今更思いました。行き当たりばったりで適当にやってるとこれだから。
ま、そんな感じ。検索の仕方次第では、文字化け対策として'SET CHARACTER SET utf8'を実行しろとかなんとか書いてあったりしますが、MTじゃそんなことできませんからね。ちゃんと適切なインポートさえできればこういう小手先は不要です。
とか偉そうに言ってますが、これが分かったの作業の途中だったりするので、増田ぶらうざ関係のコードには全部、'SET CHARACTER SET utf8'って書いてあったりします。とりあえず書き込みも読み出しもうまく動いてるっぽいのでこれでいいのだ。