後回しにしていても仕方がないので、ついにWPの文字コード変換にとりかかります。
wordpressME本家の解説もとても詳しいのですが、元のデータを削除後に新たなものをインポートという手順を不安に感じたので、元のデータは残したまま新たなものをつくるやり方をまねさせていただくことにしました。
まみむめも:[WP] EUC-JP → UTF-8 化メモ
http://mmo.rdy.jp/archives/495
Wordpress Japan:EUC-JPからUTF-8への文字コード変更
http://wordpress.xwd.jp/euc_to_utf/
ただいまからさっそく開始。
(1)メンテお知らせプラグイン「Maintenance Mode 日本語版」をオン。(本家参考)
(2)phpMyAdminでWPのデータをエクスポート。(本家参考)
ここで最初のトラブル発生。エクスポートしたものをJedit4で開いてみるも文字化け。非常に重い(メモリ2GBのmacbookでファンが回るくらい重い)上に、文字化け。いや、重いのはたぶん積年の日記量に寄るものだろうけれど。とりあえず(2)の本家の画像ではチェックの入っていなかった「EUCエンコーディングへ変換する」で再度ダウンロード。今度は化けずに開ける。twitter toolsが勝手に取ってくれているバックアップデータは相変わらず化けているけれど、本文には関わってこない部分なのでここでは気にしない(むしろUTF化の途中で文字化けが直るのではと淡い期待。)
(3)テーブル名の接頭文字を一括変換。(まみむめも参考)
ここでまたもやトラブル発生。開くのすら重いJedit4では一括置換はフリーズ。仕方なく、ひさしぶりにmiを落としてきて使ってみる。最初うまく開けず文字化けしたが「設定>エンコーディングを変更して再読込>EUC」で無事読み込み。軽〜い! この方法をとると本家の画像通りエンコーディング部分にチェックが入っていなくてもきちんと読めることがわかったので、念のためもう一度それでデータ取り直し。「***_〜」>「***2007_〜」に一括置換。…時間かかってます(でも進んでるので待機)。
15分ほど経過して、ただいま1/5〜1/4程度。ううう。でもここが辛抱のしどころ(たぶん)。ひまなので、phpMyAdminをじっと見てみる。日記の量もともかく(1.6MB)統計プラグインであるshortstatのデータ群(ss_searchとss_stat)が非常に大きいことに気づく(13.2MB)。ひーっ。これはいらないのでは。置換を途中で中断し、twitter toolsのバックアップ(bak_twitter)とさきほどのshortstatデータ2つを除いたデータを再度エクスポート。それを一括置換。はやっ。
(4)**_optionsテーブル**_user_rolesカラムの「管理人」等をUTF-8用に書き換える。(まみむめも参考)
(5)**_optionsテーブルblog_charsetカラムoption_valueをEUC-JP→UTF-8に。(まみむめも参考)
(6)**_postmetaテーブルでの日本語タグのバイト数変更。(まみむめも参考)
(7)**_options テーブルの rss_部分をEUC-JP>UTF-8に修正。(まみむめも参考)
(8)文字コードをUTF-8で保存。(まみむめも参考)
(9)phpMyAdminでファイルをインポート。(本家/まみむめも参考)
よしっ、これでっ!
…エラー…_| ̄|○
ええーっ、やっとここまでたどり着いてあとひと息っぽいのに! しかし1時間ほど試行錯誤するもどうしてもうまくいかぬまま、制限時間一杯。涙。
何度かやってみるも同じ部分でエラーになるところを見ると送信中にファイルが壊れた…とかではなさそう。問題なのは、rss部分(ぽい)ので(7)か(8)あたりがあやしいかな〜。jeditでもmiでもどうも文字コードがまだうまく使えていない気がするからそこもあやしい? それか元のファイルに問題があるか。
うーん、このまま中途半端で夜中のwowに行くのは気持ちが悪いので(金曜なのでwowは外せませんとも!)、ここはいったんリセット、もっかい勉強して出直します。とりあえずこの今日やった段階まではすぐにたどり着けるようになったので、あとはトラブルさえなんとか解決すれば。同じような症状の方をネットで探して、エディタをもちょっと調べて、phpMyAdminまではできれば勉強したくないけど、いずれにせよまとまった時間があるときでないときびしそうなので、また来週、かな。
ああ、こういうのいじりだすと本当に時間が飛ぶように過ぎていく。(ちょっと楽しい。)
0 Responses to “EUC-JP→UTF-8へ変換(…ならず)”