Total Backup稼働中の WordPress サイトの DB とソース一式をバックアップして一つの zip ファイルを作成するプラグイン Total Backup をリリースします。
まだまだ荒削りなプラグインなので、これからモリモリと機能追加していく予定。
実はこれ、め組さんの仕事の一環で作ってるプラグインの副産物です。
ちょっと色々な環境で試してみて欲しいので、こいつだけ切り出して単体プラグインとしてリリースします。
# 一般公開については、め組さんから OK 頂いてます。太っ腹!

テストは CentOS 上の PHP 5.2.17, PHP 5.3.8, Windows XP 上の PHP 5.2.12 で行っています。
WordPress 3.2.1 でしかテストしてないので、それ以下のバージョンでの動作確認取れた人は報告お願いします。

ダウンロード

total-backup.zip
WordPress > Total Backup « WordPress Plugins
公式プラグインディレクトリで公開しました。

使い方

Total Backup Optionoption ページでは、現在は以下の二つの項目が設定できます。

  • Archive Path: バックアップファイルを保存しておくディレクトリ
  • Excluded Dir: バックアップ対象外のディレクトリ

「Archive Path」は web 経由でアクセスできないディレクトリ(ただし、Web サーバが書き込み権限を持っているディレクトリ)を指定してください。
デフォルトでは sys_get_temp_dir() で取得される一時ファイル用のディレクトリがセットされています。

「Excluded Dir」は、バックアップ対象外にしたいディレクトリを指定してください。
デフォルトでは、以下の4ディレクトリが指定されています。

  • wp-content/cache/ : WP Super Cache とかが使うキャッシュファイル置き場
  • wp-content/tmp/ : DB Cache Reloaded Fix とかが使うキャッシュファイル置き場
  • wp-content/upgrade/ : コアやテーマ・プラグインをアップデートする際に WordPress が使う一時ファイル置き場
  • wp-content/uploads/ : 画像ファイル等がアップロードされているディレクトリ

Total Backupバックアップ画面では、「Site Backup」ボタンをクリックするとバックアップを開始します。
バックアップ中は、サイトがメンテナンスモードに移行します。
問題なければ、ボタンの脇に success.png が表示され、下の「Backup Files」欄にリストアップされます。
問題が有った場合は、ボタンの脇に failure.png が表示されます。
ちょっと処理が重いので、ファイル数が多かったりするとタイムアウトでエラーになってしまうかもしれません。
そんな時は Web サーバや PHP のタイムアウト設定を見直してみてください。
# この辺は、なんとかしないとですね。

バックアップファイルは「Backup Files」欄のリンクからダウンロードできます。
また、古いバックアップファイルを消したいときは、チェックボックスにチェックを入れて「Delete」ボタンをクリックしてください。

DB のバックアップファイルは、zip ファイルの中に dump.yyyymmdd.xxx.sql というファイル(例: dump.20110927.330.sql) として含まれます。
phpMyAdmin や mysql コマンド等で復元してください。

今後の展開

落ち着いてきたら、以下の機能追加を考えてます。

  • 定期的にバックグラウンドで、バックアップを行う
  • 定期的に古いバックアップファイルを削除する
  • コア・テーマ・プラグインのアップデート前に自動的にバックアップを行う

他にも何か要望があれば、お教えください。

トラックバック & ピンバック » 表示する

コメント

  • Japan Windows Mozilla Firefox 2011年12月2日 金曜日 3:16 PM

    TotalBackup使用させていただいております。便利なプラグインを公開して下さり、感謝いたします。

    ただ、データベースをバックアップしたSQLのファイルですが、これをphpMyAdminでリカバリしようとすると、いくつかのテーブルでプライマリキー違反が発生します。
    何故だろうと思ってファイルを除くと、いくつかのテーブルで、INSERTのかたまりの中に重複する同一レコードがいくつもありました。
    プラグインのソースを拝見したところ、class-wp-backuper.phpの681~720行目で、実際のテーブルをINSERT文に変換しているようですが、LIMITで100件ずつ分割しているのですね。
    で、この時に、SELECT文にORDER BYがないために、切り取った100件の並び順が不定になり、何度も同じレコードがLIMITで切り取られる可能性があるからだと思います。
    (この動作は、MySQLのバージョンに依存すると思いますが・・・)

    老婆心ながら、テーブルごとのプライマリキーを判断してORDER BYに埋め込むか、LIMITを外すかしないと、リカバリで問題が起こる人が続出すると思います。
    私の場合は手っ取り早く、LIMITを外して利用させていただいております。
    とりあえずご報告までですが、ご参考にでもなれば。長文失礼しました。

    SilverRose 返信
    • Japan Windows Mozilla Firefox 2012年1月5日 木曜日 10:00 AM

      ご指摘ありがとうございます!

      テーブルごとのプライマリキーを判断してORDER BYに埋め込むか、LIMITを外すかしないと、リカバリで問題が起こる人が続出すると思います。

      次期バージョンで、プライマリキーを判断してORDER BYに埋め込むようにします!

  • Japan Windows Mozilla Firefox 2011年11月16日 水曜日 1:54 PM

    WORDPRESS 3.2.1 を使っていますがバックアップできません。
    IE8で実行するとステータスバーに「実行しましたが、ページでエラーが発生しました。」と表示されバックアップできないようです。
    IEの設定がまずいのかな?

    J-Rocker 返信
  • twitter 2011年10月31日 月曜日 2:03 AM

    “WordPress の DB とソースをバックアップするプラグイン : dogmap.jp” http://t.co/xSciYO0W

  • twitter 2011年10月22日 土曜日 9:00 PM

    便利そう、メモメモ | WordPressのDBとソースをバックアップするプラグイン: dogmap.jp http://t.co/P88hVhx7

  • twitter 2011年10月6日 木曜日 8:04 PM

    あーざす!ちょと調べてみますね。RT @urepko: @hawaiian_cafe こういうプラグインがあります。 http://t.co/LhlYuENs 画像までは確認してません。

  • twitter 2011年10月6日 木曜日 12:23 PM

    @hawaiian_cafe こういうプラグインがあります。
    http://t.co/4rbApK7e 画像までは確認してません。
    詳しくは、 @wokamoto へ
    あはは 投げちゃった o(^▽^)o

  • twitter 2011年9月30日 金曜日 9:46 PM

    WordPress+の+DB+とソースをバックアップするプラグイン http://t.co/eZcorf35

  • twitter 2011年9月30日 金曜日 7:45 PM

    WordPress の DB とソースをバックアップするプラグイン : dogmap.jp: WordPress の DB とソースをバックアップするプラグイン : dogmap.jp稼働中の WordPress サイトの … http://t.co/o9ismJqq

  • delicious 2011年9月30日 金曜日 5:42 PM

    WordPress の DB とソースをバックアップするプラグイン : dogmap.jp

  • twitter 2011年9月30日 金曜日 5:38 PM

    テストさせていただきます。 WordPress+の+DB+とソースをバックアップするプラグイン http://t.co/nR9TbL3T

  • twitter 2011年9月30日 金曜日 4:00 PM

    WordPress の DB とソースをバックアップするプラグイン : dogmap.jp http://t.co/rYDfCwe5

  • twitter 2011年9月30日 金曜日 1:00 PM

    Total Backup 試してくれた人、感想とかよろしくですー。Head Cleaner 作ってた時は、リプライ多くて楽しかったのにニャー。 http://t.co/Z2QxJ4Kh #wordpressjp

  • twitter 2011年9月30日 金曜日 12:47 PM

    メモ_φ(・_・→WordPress の DB とソースをバックアップするプラグイン : dogmap.jp http://t.co/r3i9SkfQ (via @ReadItLater)

  • twitter 2011年9月30日 金曜日 12:42 PM

    Total Backup 試してくれた人、感想とかよろしくですー。Head Cleaner 作ってた時は、リプライ多くて楽しかったのにニャー。 http://t.co/Z2QxJ4Kh #wordpressjp

  • twitter 2011年9月29日 木曜日 12:05 PM

    WordPress の DB とソースをバックアップするプラグイン : dogmap.jp http://t.co/OEPjsi9n

  • twitter 2011年9月29日 木曜日 11:30 AM

    WordPress の DB とソースをバックアップするプラグイン : dogmap.jp http://t.co/Wfk0vhRK

  • twitter 2011年9月29日 木曜日 11:15 AM

    “WordPress の DB とソースをバックアップするプラグイン : dogmap.jp” http://t.co/2ZcqXB9O

コメントする

入力いただいたメールアドレスから Gravatar に登録されているアイコンを表示します。
(メールアドレスは公開されません)

改行と段落タグは自動で挿入されます。メールアドレスは表示されません。

:mrgreen: :-P :-D :-) ;-) :-o :-| :-( 8-O :-? 8-) :twisted: :evil: :oops: :roll: :cry: :lol: :-x more »