WordPressの開発環境に別の環境の開発環境のデータベースの情報をインポートする方法


  1. Staff Blog
  2. WordPress
  3. WordPressの開発環境に別の環境の開発環境のデータベースの情報をインポートする方法

はい、みなさんこんにちは。いしかわでございます。今回は以下のようなレアな状況の対応についてです。

今回の状況

  • 同僚の開発環境でどうやら不具合が出ているらしい
  • 自分の環境では発生しない
  • All in One WP Migration などでサイト全体のデータを貰いたいところだが、相手も開発環境なので全部エクスポート・インポートだと容量が巨大すぎてそのままコピーはいので手元で再現できない

というケースです。

プログラムのファイルとしては同じなのにAさんで発生するのにBさんで発生しない場合、データベースに保存されている何らかの設定状況の違いによって引き起こされている事が可能性として考えられるので、一旦データベースだけインポートします。

ちょっとした事なら VS Clode の LiveShare を使って同僚の環境で直接調査できるのですが、時間がかかりそうな場合は手元に環境作って対応した方がやりやすいので。

調査担当者の開発環境のデータベース情報のバックアップ

新規で検証環境を作ると、WordPressだけでなく関連プラグインもリポジトリをクローンしてビルドが必要だったり面倒なので、普段の開発環境にそのままインポートしたいと思います。しかし、現状のデータベースの情報を上書きすると後で困るので、現状のデータベースだけバックアップします。

開発環境が wp-env の場合

開発環境のディレクトリをターミナルで開いて

wp-env run cli wp db export もとの環境.sql

のように叩けばデータベースの情報を保存できます。

※勿論sqlのファイル名は適当に変更してください。

ちなみに、データベースをエクスポートする wp-cli のコマンドは wp db export 保存ファイル名 でいけるのですが、 wp-env で使う場合は、前に wp-env run cli が必要なので、上記のようになります。

それ以外の環境の場合

wp-cli が使えれば wp db export ファイル名.sql で保存できますが、よくわからない場合はプラグイン UpdraftPlus でデータベースをバックアップしておけばよいと思います。

ただし、データベース以外の余分なファイルをバックアップしないように設定を変更します。

バックアップ設定の変更

sql以外の余分なデータをエクスポートしないように、設定 > UpdraftPlus バックアップ の「設定」タブの、「バックアップに含めるファイル」のセクションでチェックを外して変更を保存します。

バックアップの実行

あとは、「バックアップ/復元」タブに戻って「今すぐバックアップ」ボタンでバックアップがとれます。

不具合の発生する環境のデータベース情報のエクスポート

開発環境が wp-env の場合

バックアップをとった場合と同じくコマンド叩いてエクスポート

wp-env run cli wp db export 不具合が発生する環境.sql

UpdraftPlusでエクスポートする場合

プラグイン UpdraftPlus を有効化して、データベース以外バックアップしないように設定を変更します。

バックアップファイルの取得

バックアップしたファイルは 以下の方法で取得できます。

  • 設定 > UpdraftPlus バックアップ 画面の「バックアップ/復元」タブ内からダウンロード
  • ローカル環境の wp-content/updraft 内から直接取得

不具合の発生する環境の sql データが落とせたら同僚などわかりそうな人に渡しましょう。

不具合の発生する環境のデータベース情報のインポート

開発環境が wp-env で sql データを直接貰った場合

一旦既存のDB情報をリセット(任意)

wp-env run cli wp db reset

不具合が発生する sql データをインポート

wp-env run cli wp db import 不具合が発生する環境.sql

でインポート可能です。

調査担当者の開発環境にUpdraftでインポートする場合

インポートファイルの配置

UpdraftPlusでエクスポートして貰ったデータを /wp-content/updraft/ ディレクトリに置きます。

Updraftでのインポートの実行

配置したバックアップデータを Updraft が認識するように「新規バックアップ一式のためにローカルフォルダーを再スキャン」を実行します。

すると、既存のバックアップファイルが表示されるので、復元します。

インポートした環境のURL調整とログイン

URLの置換

ログインしたりサイトを表示した時にへんなURLにリダイレクトしてしまう場合はデータベースに保存されている WordPress の URL 情報を置換する必要があります。

※プラグインなどでインポートした場合はインポート時に自動的に置換されて正常に表示される場合がありますので、その場合はこの工程は必要ありません。

wp-env の場合

wp-env run cli wp search-replace 不具合の発生する環境のドメイン 今の開発環境のドメイン

wp-env 以外の場合

wp search-replace 不具合の発生する環境のドメイン 今の開発環境のドメイン

※ 環境が wp-env でない場合は wp-env run cli は削除してそれ以降の部分だけ叩いてください。

ユーザー情報の作成

不具合が発生する環境のユーザー名とパスワードを教えて貰っても良いのですが、聞くのが面倒な場合は以下のようにコマンドで発行します。

wp-env run cli wp user create admin admin@example.com --role=administrator --user_pass=admin

これで

ユーザー名 : admin
パスワード : admin

でログインできます。

※ 環境が wp-env でない場合は wp-env run cli は削除してそれ以降の部分だけ叩いてください。

調査・検証・修正

これでデータベースのインポートができたのでインポートした環境で同様の不具合が発生するか調査します。

もとのデータベースの復元

wp-env の場合

データベースのリセット

wp-env run cli wp db reset

もとの環境のデータベースの復元

wp-env run cli wp db import もとの環境.sql

Updraftの場合

設定 > UpdraftPlusバックアップ 画面の バックアップ/復元 タブから復元

みたいな感じでもとに戻せます。

この記事を書いた人

石川栄和代表取締役
名古屋のウェブ制作会社数社に10年程度務めた後、株式会社ベクトル設立。
企画・運営・コンサルティング〜WordPressを中心としたシステム開発まで幅広く携わる。
[ 著書 ]
・いちばんやさしいWordPressの教本(共著)
・現場でかならず使われているWordPressデザインのメソッド(共著)
[ 最近のWordPressコミュニティでの活動 ]
WordCamp Tokoy 2023 セッションスピーカー
WordCamp Asia 2023 セッションスピーカー(LT)
WordCamp Niigata 2019 セッションスピーカー
WordCamp Haneda 2019 セッションスピーカー
WordCamp Osaka 2018 セッションスピーカー
WordCamp Kyoto 2017 セッションスピーカー

ご好評につきキャンペーン期間延長!
Vektor Passport


を買って

Evergreen
無料でダウンロードしよう

Lightningで使えるおしゃれなデザインスキン / コンテンツデータを試せるチャンス!


PAGE TOP

このデモサイトは Vektor,Inc. のテーマとプラグインで構築されています。ご購入や詳細情報は下記のリンクもご参考ください。