wp-postsの分割(SQL実行)とWXRインポート
ここでは、WordPressのデータテーブル『wp-postsの分割(SQLの実行)』と『WXRのインポート』について取り上げています。
サーバー移転やトラブル等で、サイトの復元が必要になった場合、WordPressでは、『phpMyadminからSQLのバックアップファイルをインポートする方法』と、『エクスポート機能でアウトプットしたWXRファイルを再インポートする方法』と二通りあります。
しかし、WordPressも投稿記事が数百に及ぶと、SQL、WXRともにサイズが大きくなり、インポートが難しくなってきます。
サーバーによっては、一回にインポートできるファイル容量が小さく設定されていたり、何らかの原因で接続が切れてしまったり、トラブルが発生しやすくなるからです。
php.iniを直接編集できないサーバーの場合、手動によるファイル分割が必要になってきますので、その基本操作について解説します。
WordPressでは、インポートできるファイルのサイズが「2MB」に限られていますが、これを増量する方法があります。
(1) php.iniを直接編集する
(2) .htaccessにコードを書き加える
php.iniに関しては、「php.iniを編集してインポートできるファイル・サイズを増量する」をご参照下さい。
.htaccessに関しては、他サイトにたくさん情報が出ています。
「upload_max_filesize php.ini htaccess」といった単語で検索してみて下さい。
『wp-posts』の分割とSQL実行
……とはいえ、これを安全確実に分割するのは、プログラムに詳しい人でも難しい話です。
ネット上でもいろんな方法が紹介されていますが、初心者が見よう見まねで実行するのはかなりリスキーだと思います。
私も「この方法なら簡単確実ですよ!」という説明はできないので、ここでは概念と、1つの原始的な方法(手間がかかりますが)をご紹介します。
WordPressの場合、データのインポートで最大のネックとなるのが、投稿記事に関する情報を格納している『wp-posts』です。
記事数が二桁ならそこまで負担になりませんが、400、500となってくると、並のテキストエディタでは開けないくらい大きくなります。
私のサイトも、『wp-posts』だけで8MBになるので、全データをインポートする時は、他のテーブルと別個に分けて作業しています。
サーバーに十分な許容量があっても、接続の状況によっては、タイムオーバーで中断したり、思いがけないエラーを吐くことがあるからです。
データをインポートする際は、まず、ファイルの容量を確認し、利用しているサーバーの許容量をチェックします。

多くのレンタルサーバーは、十分な容量を取っていますので、個人のサイトであれば、一回で全データのインポートが出来ると思いますが、一応、『wp-posts』の分割の仕方と、『SQLの実行』について説明しておきますね。
phpMyadminから『wp-posts』テーブルだけをエクスポートすると、まず、冒頭に、phpMyadminとデータベースに関する情報が表示されます。

次に「テーブルの構造」に関する情報が表示されます。
CREATE TABLE IF NOT EXISTS 「wp-postsテーブルが存在しなければ、これらのテーブルを作成する」というもの。

ついで、「INSERT INTO」の形で、投稿記事の内容が表示されます。

1アイテム(1記事)の終わりは、 ),

INSERT文の終わりは、 );

『wp-posts』テーブルを複数に分割し、1つ1つインポートすることは出来ません。
なぜなら、「テーブル」としてインポートした場合、すべてのデータは上書きされてしまうからです。
たとえば記事ABCを含むwp-postsをインポートし、続いて、記事XYZを含むwp-postsをインポートしても、記事ABCXYZとはならないのです(すべて上書きされてしまう)
単純に、データの中身だけをインポートする場合は、SQLとして実行します。

wp-postsの場合、SQLは、INSERT INTO から、); で括られた部分までを1つのクエリとして認識します。
INSERT INTOで開始。

挿入したいアイテムの始まり。

INSERT文の終わり。最後は必ず ); で閉じます。

これらを1つのクエリとしてコピーし、SQL実行画面にペーストして、実行します。
インサート文はいくつ連ねてもOKなので、サーバーの負担にならない大きさ(~1MBぐらい)で実行します。

成功すれば、下記ようなメッセージが現れます。

SQL文としてアップロードすれば、データがどんどん追加されていきますので、「既存のテーブル内容が上書きされて消える」ということがありません。
ただし、分割の仕方を間違うと、いくつかの記事が失われたり、エラーメッセージが出たりしますので、注意が必要です。
また全ての記事が完全にインポートされたか確認する為にも、事前に、サイトステータス(記事数、カテゴリー数など)は必ずチェックしておきましょう。
参考記事:
Related Posts:




Comments
No comments so far.