当サイトには広告が含まれております

WordPressのバックアップをBackWPupで!その3

この記事は最終更新日から10年経過しています。内容が古い可能性があります。

usag1

せっかくバックアップしたので、ローカルPCに同じサイトを復元してみようと思います。結論から言うと、

びっくりするほど簡単に、バックアップできちゃいました!たぶん、5分ぐらいで出来ます♪

記事をざっと見る

xamppのhtdocsに新しくフォルダを作って、ファイルをコピー

ローカルPCにはxamppを入れてあるのでそこに新しくサイトのコピーを作ろうと思います。htdocsの下に、

ryuswpbk

というフォルダを作ります。そこにバックアップファイルを解凍したものから、データベースのバックアップ(私の場合はryus_wpblog.sql) 以外を全部コピーして、新しく作ったフォルダにペーストします。

コピー
Image

ペースト
Image

phpMyAdminでデータベースを作ってデータをインポートする

ryus_wpblog_backup という名前で 新しくデータベースを作ります。

Image

 

作ったデータベースにバックアップからデータをインポートします。作ったデータベースを選択してからインポートタブをクリック。

Image

 

ファイルを選択、ボタンを押してバックアップファイルを解凍したところからデータベースのファイル(私の場合はryus_wpblog.sql)を選択します。

ページ下部にある 実行する ボタンをクリックします。

Image

 

wp-config.php を書き換える

 

ルート直下にある  wp-config.php をテキストエディタで開き、データベースに関する部分を変更します。

define('DB_NAME', 'ryus_wpblog_backup');

/** MySQL データベースのユーザー名 */
define('DB_USER', 'root');

/** MySQL データベースのパスワード */
define('DB_PASSWORD', '');

DB_NAME には先ほど作ったデータベースの名前を、DB_USERとDB_PASSWORDはxamppでいつも使っているものを入れます。変更したら保存します。

とりあえず、見てみる だいたいできてます

と、ここまでやったらちょっと見てみます。ブラウザで今作ったサイトのurlを入力します。

Image

 

おーなんと、大体できてます。あと、この画面どこかで見たことがあります。以前DBをインポートしたとき同じことがありました。

データの中のurlを書き換える

これは本番サーバでデータベースが破損したなどで復旧するときは必要ありませんが、今回のように全く別の所にバックアップから復元するときには必要です。

以前書いた記事 WordPressサイトデータをローカルに構築して試すときの手順 の

3.dbの中身のurlをローカルのものに置き換える

というところをやればよさそうです。

UPDATE `usortwp_options` SET option_value = REPLACE (option_value, "https://usortblog.com/", "http://localhost/ryuswp");
UPDATE `usortwp_postmeta` SET meta_value = REPLACE (meta_value, "https://usortblog.com/", "http://localhost/ryuswp");
UPDATE `usortwp_posts` SET post_content = REPLACE (post_content, "https://usortblog.com/", "http://localhost/ryuswp");
UPDATE `usortwp_posts` SET guid = REPLACE (guid, "https://usortblog.com/", "http://localhost/ryuswp");

この4行をコピーして、ローカルのテキストエディタに貼り付けて、

http://localhost/ryuswp を http://localhost/ryuswpbk に変更します。その4行をコピーしてphpMyAdminの SQL タブで実行します。

Image

もう一度見てみる…トップはいいんだけど、記事をクリックするとエラー!

これで、OKともう一度トップを見ます。大丈夫そうです。

Image

 

やれやれ…と個別記事をクリックしたら、、えー!CakePHPのエラー??? これってなんかおかしい。ローカルにCakePHPは入ってるけども…

 

Image

たぶんこれって rewriteが上手く行っていないのでは…

ということでダッシュボード>設定>パーマリンク設定 でmodrewrite設定をしなおす

 

ダッシュボード 設定>パーマリンク設定を開き、

Image

何も変更せずに

Image

変更を保存をクリックします。

問題解決。結局手順が分かれば5分ぐらいで復元出来ます

ということでもう一度個別リンクをクリックしてみます。
Image

できました!どのリンクを押しても問題なく見ることが出来ます。

サーバでデータベースなどが壊れたときの復旧時にもこの操作は必要かもしれませんので、もし同様の事が起こったらやってみてください。

ひっかかったところがわかってからもう一度最初からやり直してみましたが5分もかからずに復元することが出来ました。

ってことで backWPup でのバックアップから復元まで一通り終わりました。設定も簡単でバックアップは自動、復元も5分で出来ちゃうというのはとってもいいですね!

これで日々安心して記事を書いたり、ローカルで簡単に同じサイトを作って色々試すことが出来ます!いざとなればサーバに復旧することも出来るし。超安心です。

 

この記事が気に入ったら
いいね または フォローしてね!

あなたのシェアが励みになります!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメント一覧 (17件)

  • こんばんは。「とりあえず、見てみる だいたいできてます」まで進むことができたのですが、ダッシュボードにログインすることができず困っています。元のサイトのユーザー名とパスワードを入力してもダメで、それ以外にはユーザー名、パスワードの設定をしていないと思うのですが・・

    2つ気になっていることがあります。関係ないかもですが、
    1.XAMPPでphpMyAdmin に次のエラーが出ています。
    「phpMyAdmin 環境保管領域が完全に設定されていないため、いくつかの拡張機能が無効になっています。理由についてはこちらをご覧ください。」
    XAMPPをインストールし直しても同じで、バージョンを変えてインストールし直しても同じエラーがでます。
    今の私の環境は、Windows7で、XAMPPは今は最新バージョン(1.8.3 / PHP 5.5.11)にしています。

    2.私のWordPressのデータベースのwp_users が空になっている

    何かアドバイスいただけるととても助かります。よろしくお願い致します。

    • おはようございます、hueblue2さん。
      バックアップからデータを戻しているので、バックアップ元のサイトのユーザー名とパスワードでログインすることができるはずなのですが、出来ない感じですかね~。

      >2.私のWordPressのデータベースのwp_users が空になっている

      というところが気になります。「私のWordPressのデータベース」というのは、local環境の「バックアップから復元した」データベースのことですかね?となると…、バックアップからのデータベース復元が上手く出来てない感じがしますね。ということは、

      >1.XAMPPでphpMyAdmin に次のエラーが出ています。

      が原因のような気がしますね。こっちを先に直した方がいいのかもしれません。私の使っているxamppは

      XAMPP
      1.7.7
      [PHP: 5.3.8]

      でした。確信は持てませんがxamppを利用する場合、新しすぎるバージョンだと既存のCMSなどがうまく動かない事もあるようです。とりあえずお時間があれば上記のバージョンでお試しになられたらいかがでしょう~

  • こんばんは。ご返信ありがとうございます。

    >2.私のWordPressのデータベース そうです。local環境の「バックアップから復元した」データベースのことです。

    >1.XAMPPのバージョンを1.8.1、1.8.0、1.7.7と変えて試してみたところ、どれも、phpMyAdminの上記エラーはでませんでした。
    ただ、データベースを見るとwp_usersが空なのは同じで、結局ログインできません。

    wp_usersの以下の値を適当に設定して、ログインを試みましたが、「このページにアクセスするための十分なアクセス権がありません。」という表示でログインできませんでした。
    user_login           admin  
    user_pass (関数 MD5) *****

    実は一度(どのバージョンだったか控え忘れてしまいました)この方法でログインできたんですが、再現しないので困っています・・・

    今度はバックアップの方法を変えて(他のプラグインを使うなど?)、wp_usersが正しくバックアップされるかどうか試してみようと思います。

    引き続きよろしくお願い致します。

  • こんばんは。その後、少し進展があったので、ご連絡致します。

    サーバーはロリポップを利用しているのですが、直接サーバーからphpMyAdminでデータベースをエキスポートして、それを復元した場合、wp_usersの中身はちゃんと存在し、元のWordPressのユーザー名とパスワードでダッシュボードにログインできることまで確認できました。

    backWPupでは何故かwp_usersが空になるようです。また、WP-DBManagerというデータベースのバックアッププラグインをインストールしてみましたが、これでも空になるようです。

    その理由と対策がわかれば解決なのですが・・

  • backWPupでバックアップしたときにwp_usersが空になるんですね…私の場合はうまくできてたようので、うううーむなんだろう?

    backWPupでエラーは出ていなかったでしょうか?サーバによるらしいのですが、私の環境でzipで指定してbackWPupを使うと必ずエラーになるという現象がありました。http://usortblog.com//backwpup2/

    なので、
    http://wordpress.org/support/topic/ziparchive-returns-status-er_deleted-entry-has-been-deleted?replies=15
    こちらの制作者さんサイトを見て、新しいバージョンのものを入れてみたりしましたがzip圧縮ではやはり上手く行かずtar圧縮でうまくいくという経過がありました。

    もしかしてこちらに書いてあったgithubのβバージョンとかだと上手く行くとかないでしょうかね?

  • ありがとうございます。
    backWPup、エラー出ていないんです。
    WP-DBManagerでも空ということで、backWPupだけの問題ではないようです。

    もしかしたらロリポップの方で何か制限をかけていたりするかもしれないと思い、問い合わせをしたところ、調べてくれるとのことなので、しばらく待ってみることにします。
    また進展がありましたら、ご連絡します。
    よろしくお願いします。

    • >WP-DBManagerでも空ということで、backWPupだけの問題ではないようです。

      なるほど~そうなのですね。すると確かにサーバの方が何か?って気もしますね!問題が解決するといいのですが。
      進展があってなにか分かりましたらぜひ教えてください!

  • ロリポップ!レンタルサーバーに現象を確認していただきました。
    [WordPress version 3.9.1][BackWPup version 3.1.2]にて

    ◆ユーザーが1人のとき
    「wp_users」テーブルについてはテーブル構造のみがバックアップされ、その中身はデータベースのバックアップに含まれない。

    ◆ユーザーが複数のとき
    最後に追加されたユーザーがバックアップに含まれない。

    ・ロリポップ!だけでなく、他社レンタルサーバーでもご確認いただき、同じ現象が確認されたとのことです。
    ・WP-DBManagerについても調査をお願いしました。
    ・兎本さんの方では、ユーザーが複数だと思うのですが、最後に追加されたユーザーについて、バックアップに含まれていますか?

    • こんにちは。なるほど、そういう事なのですね…しかし不思議な…

      今朝バックアップされたものを解凍して見てみたのですが、wp_usersには2人分のデータが入っていました。登録しているuserも2人なのでそのような現象は起こっていないようですね…

      あと、バージョンなのですが、私はzip圧縮が失敗していたために バージョン 3.1.3-beta2 というものを使っています。そのせい、、でもなさそうですが。

      ローカル環境(xampp)でテストしたときはバージョンが3.1.2でした。そのときのzipを解凍してみたところ、やはり2人分のデータがありました。

      もし、可能でしたら別のサーバかローカル環境で一度お試しになったらいかがかなと思います。ちなみにこのサイトのレンタルサーバーはcoreserverです。

  • こんばんは。

    先ほどWordPressフォーラムの方にメンバーの方から回答をいただきました。
    https://wordpress.org/support/topic/a-value-of-wp_users-is-empty?replies=7#post-5634656

    InnoDBなら、wp_usersはバックアップされないかもという意味だと思うのですが、

    その少し前にロリポップさんからも回答をいただいていて、どうやら同じことを
    指摘しているようです。

    **** ロリポップさんからの回答抜粋 ************
    backwpupが、該当テーブルの行数を判定している箇所において
    backwpupが想定している値が得られていないことが
    原因でwp_usersをバックアップできていないようでございます。

    ■箇所
     wp-content/plugins/backwpup/inc/class-mysqldump.php:152行

    現時点では、これがbackwpupの不具合なのか、あるいは
    MySQLの不具合であるのか、あるいは別の原因があるのかについては
    弊社でも確認が行えておりません。
    ******************************

    • ああ!そうなんですね!良かったです~(^^)/

      バージョンと環境の組み合わせで出来たり出来なかったりがあったのですね、きっと。
      色々情報いただいて、こちらこそありがとうございました、勉強になります♪

  • その後、ひとつ大きな問題を生じていたのですが、解決しましたので、ご連絡します。
    バックアップファイル(拡張子.tar.gz)を解凍するとフォルダ階層がぐちゃぐちゃになってしまっていたのです。

    プラグイン制作者とメールでやりとりした結果、the Program 7-zip (http://www.7-zip.org/) という解凍ソフトを勧められ、それを使うと、問題が生じないことがわかりました。(私も実際に問題がないことを確認しました。)

    参考に、私はLhaplusという解凍ソフトを使っていました。結構メジャーな解凍ソフトだと思うのですが、こういう問題を生じることもあるのですね。

  • コメント欄を沢山埋めてしまい、本当に恐縮しています。どれも削除していただいて大丈夫です!本当にお願いします!

    兎本さんの記事のお陰でローカルへの復元、無事にできました。
    ただ、私の方は、すんなりとは行かず、XAMPPの諸問題、BackWPupの不具合、解凍ソフトの相性など、かなり右往左往してしまいました。それらの内容を全てまとめて、私の個人的なブログにでアップしました。http://hueblueblue.net/backwpup/
    兎本さんの記事の再現確認などもしていますが、お許しください。
    この度はありがとうございました。

  • 無事に出来たようで良かったです。blogにも書いていただいたのですね。私もそのうちおなじような状況になるやもしれないのでそのときは参照できると思いますのでうれしいです!
    なにかちょっとでもお役に立てたなら幸いです(^^)/

記事をざっと見る