サポート » 使い方全般 » データベースの復元方法

  • 解決済 momo-sophia

    (@momo-sophia)


    WordPressにて、本番サイトとテスト用サイトを作成しました。

    テスト用サイトにて作成したデータを、本番に反映する際、よい方法があればご教授願います。

    現在は、phpMyAdminツールにて
    ・テストDBをエクスポート
    ・SQLを開いて、サイトURLを変更
    ・本番DBへインポート
    しています。

    プラグインをテストサイトでのみ確認したりしたいので、できれば必要な項目(※)のみ反映したいのです。
    ・投稿
    ・メディア
    ・固定ページ
    ・外観(ウィジェット、メニュー等)

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • 基本的なWordPressのテーブルは11個あります。
    インストールするプラグインにより、増えることもあります。
    それらは、ただ別々に存在するのではなく、お互いに関連づいています。

    ご利用になるプラグインがどのようなものかわかりませんが、単純に「これだけエクスポート・インポートすればいいよ」というような回答は期待できないと思いますよ。

    トピック投稿者 momo-sophia

    (@momo-sophia)

    反映したいのは、通常のデータのみです。
    ・投稿
    ・メディア
    ・固定ページ
    ・外観(ウィジェット、メニュー等)

    プラグインのデータを反映したくないので、↑のみを反映する方法が知りたいのです。
    難しいですか?

    モデレーター gatespace

    (@gatespace)

    まず、できるところから、
    ・投稿(コメント、カスタムフィールド、カテゴリー、タグを含む)
    ・固定ページ(コメント、カスタムフィールド、カテゴリー、タグを含む)
    (カスタム投稿タイプ)

    この2つはデータベースではなく、ダッシュボードのエクスポートから書き出しできます。
    同じくダッシュボードの「インポート」からデータのインポートができます。

    メディアについてはインポート時のオプションで一緒にインポートできますが、投稿に紐付けられていない物についてはちょっと分かりません(余り使わないので)

    なお、ダッシュボードのインポートから行った場合でも記事中のリンクなどに一部テスト用のページなどへのリンクが残ったりするので注意が必要です。

    なお、外観(ウィジェット、メニュー等)はこの方法には対応していません。

    さて、データベース内の特定の情報のみ反映させるのはかなり難しいと思います。
    (SQL文ばりばり書けるぜ!というなら話は別かも知れませんが)

    例えば「投稿」そのものはwp_postsテーブルに保存されていますが、投稿に連動したカテゴリーなどは wp_terms、wp_term_relationships、wp_term_taxonomyに分散していますし、投稿に紐付けられたカスタムフィールド(及びメタデータ)、コメントも別テーブルです。

    また、wp_posts に設定情報をカスタム投稿タイプとして保存しているプラグインも多数存在します。(Contact Form 7 など)

    ですので、一概に「このテーブルさえ書き換えれば大丈夫」と言えません。

    自分なら全てのDBを本番環境に移行しちゃいます。
    仮にテスト用にしかないプラグインがあっても、本番の方で「○○というプラグインが見つかりませんでした」となるだけなので。

    ちなみ momo-sophia さんが書かれた

    ・SQLを開いて、サイトURLを変更

    この方法だと、プラグインのオプションデータなど、シリアライズされて保存されているデータが壊れますので、余りおすすめできません。

    以下の2つのうち、どちらかの方法で変換される事をおすすめします。

    トピック投稿者 momo-sophia

    (@momo-sophia)

    gatespaceさま

    返信が遅くなり申し訳ありません。

    ダッシュボードでエクスポート&インポートできるの知りませんでした。
    けっこうショックです・・・

    この方法だと、プラグインのオプションデータなど、シリアライズされて保存されているデータが壊れますので、余りおすすめできません。

    もうやってしまったのですが、壊れてしまったのでしょうか?
    問題なく動作しているようですが、念のため、プラグインをインストールしなおしました。

    外観については、手動で対応できる範囲ですので、エクスポート&インポートしようと思います。
    ありがとうございました。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「データベースの復元方法」には新たに返信することはできません。