WordPressのエクスポートとインポート

WordPressMEのエクスポート機能には致命的なバグがあり、文字コードがEUCだとエクスポートした内容が全て文字化けするというどうしようもない状態になってしまう。
なので必然的に、文字コードがEUCだとプラグインを使用するかデータベースのエクスポートで対応するしかない。
しかしインポート&エクスポートはブログユーザなら一度は遭遇する壁じゃないだろうか。
特にレンタルサーバだとphpmyadminが触れないし、既に入っていると自分で設置するのは面倒。
私も元EUCだったが、バージョンアップやらサーバ移動やらでEUCだったのをUTFにすることが一応出来たのでメモっておく。

【1】元になるブログのデータベースをphpmyadminからエクスポートする。

phpmyadminのトップで文字コードを確認後、
該当データベースを選んでエクスポートを押すだけです。
この時、

  • 「DROP TABLEを追加」と「完全な INSERT 文を作成する」にチェックを入れる
  • optionsテーブルは選択しない

以上2点に注意すること。
optionsを入れてしまうとurlから何から全部元と同じになってしまうため外す。

保存サイズが少ない場合、「ファイルに保存する」にチェックをしないで実行。
サイズが多い場合、「ファイルに保存する」にチェックをして実行する。

【2】出力されたものを保存

「ファイルに保存する」にチェックしなかった場合
データベースと同じ文字コードの新規テキストファイルを用意する。
文字コードを扱えるテキストエディタ必須。(秀丸やTeraPadなど)
次のページに表示されるテキストエリアにsql文が全部出力されるので、それをコピーしてペーストする。
サイズによるが、かなり時間がかかると思うので、焦って余計なところをクリック連打したり窓を閉じたりしないこと。
「ファイルに保存する」にチェックした場合
ダウンロードが始まるので適当な場所に保存する。

【2.5】文字コード変換(必要な場合)
テキストエディタの機能で変換する。
秀丸の場合だと、ファイル→エンコードの種類→Unicode(UTF-8)で、内容維持したまま変換。
TeraPadなら、ファイル→文字/改行コード指定保存。

【3】先頭の文章をちょっと変える

出力されたファイルの先頭は多分こんな感じだと思うが、ここから

-- phpMyAdmin SQL Dump
-- version 2.10.0.2
-- http://www.phpmyadmin.net
--
-- ホスト: localhost
-- 生成時間: 2007 年 6 月 15 日 00:00
-- サーバのバージョン: 4.0.27
-- PHP のバージョン: 4.3.9

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";

--
-- データベース: `mysqldbname`
-- 

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";を削除する。
これがあるとインポートの時エラーが出る。

【4】新しいWPを普通にインストール。

新しいものを普通に新しくインストールする。WPのインストールは簡単でいい。

【5】新しいWPのデータベースに元のデータをインポートする。

最初に書き出したsqlファイルをインポートする。
ただ、phpmyadminのバージョンによって、インポートタブがあるのとないのがあり、
あるものはインポートからやればいいが、ないバージョンはsqlのタブからインポートしなければならない。

インポート成功すると、成功しましたというメッセージが出る。出たら終了。

ブログのエンコードがutf-8の場合は管理に付属のエクスポートが便利。
まあでも、データベースのバックアップは取っておくにこした事はないかなと思う。

「WordPressのエクスポートとインポート」への1件のフィードバック

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください