MySQLダンプを利用したWordPressのバックアップと復元。example.comからexample.netへ移行する場合を例にまとめている。
移行情報
移行元 | 移行先 | |
---|---|---|
データベース | MySQL(UTF-8) | MySQL(UTF-8) |
ドメイン | example.com | example.net |
WordPress アドレス (URL) | http://www.example.com/wordpress | http://www.example.net/wordpress |
サイトアドレス (URL) | http://www.example.com/wordpress | http://www.example.net |
手順
- 移行元のデータをバックアップ
- ファイルのバックアップ
- テーマ[1]
- WordPressを使ってアップロードしたファイル[1]
- プラグイン[1]
- MySQLのバックアップ(SQLダンプ)
- ファイルのバックアップ
- 移行先のサイトでWordPressを構築する。
- テーマ
- WordPressを使ってアップロードしたファイル
- プラグイン・・・プラグインは後述するダンプファイルをインポートする前に有効化などの設定をしておく。
- ダンプファイルのexample.comをexample.netへ置換する。
- 移行先でダンプファイルをインポートする。
- パーマリンクがカスタム構造のときはhtaccessファイルを修正する[2]。
- サイトアドレスとWordPressアドレスが異なるときはindex.phpの修正・移動などの処理をする。
MySQLダンプ
phpMyAdminを使ってSQLダンプを行う。今回のダンプファイルは移行先サイトで構築済みのテーブルをすべて削除してから新たに各テーブルを作成してデータをINSERTする。エクスポートの設定は下記の通り。
構造 DROP TABLE / VIEW / PROCEDURE / FUNCTIONを追加 ← チェック IF NOT EXISTSを追加 ← チェック AUTO_INCREMENT 値を追加する ← チェック テーブル名やフィールド名を逆クォートで囲む ← チェック CREATE PROCEDURE / FUNCTIONを追加 データ 完全な INSERT 文を作成する ← チェック 長い INSERT 文を作成する ← チェック 作成するクエリの最大長 遅延インサートを使用する INSERT IGNORE を使用する BLOBに16進数表記を利用する ← チェック エクスポート形式 INSERT
インポート
インポートファイルは最大102kKiB(約100MB)[2]。
102 kKiBについては下記の記事が詳しい。
» 2011-07-26 – ここはちょっと見せられない
WordPressのテーブル
テーブルプレフィックスはデフォルトのwp_とする。
wp_commentmeta wp_comments wp_links wp_options wp_postmeta wp_posts wp_terms wp_term_relationships wp_term_taxonomy wp_usermeta wp_users
値にドメインを持つ主なテーブル(アルファベット順)
参考までに最近移行した際にドメインを値に持っていたテーブルを列挙する。
wp_commentmeta, wp_comments
コメントの情報を格納。
wp_options
サイトに関する情報を格納。bloginfoで取得するデータを格納
フィールドsiteurl,home,dashboard_widget_optionsなど
- siteurl WordPressアドレス
- home サイトアドレス
wp_users
ユーザーのメールアドレス
[1] デフォルトのパス
テーマディレクトリ wordpress/wp-content/themes
uploadディレクトリ wordpress/wp-content/uploads
プラグインディレクトリ wordpress/wp-content/plugins
[2] htaccessに書き込み権限があればパーメリンク設定画面で変更を保存を行えば良い場合もある。
[3] WordPressのツール > インポートは最大サイズ: 5MB。