WordPressのバックアップpluginでDB以外にもThemeファイルなど、サーバー上にあるすべてのファイルも対象にできる「BackWPup」を導入し、DropBoxに定期的に保存することにしましたが、どういうわけかたびたびエラーが起こっていました。
というか、エラーでバックアップされていない状態がずっと続いていたので、根本的な原因の解明に乗り出すことにしました。
今回の症状として、Logを見ると、対象ファイルの圧縮まではうまくいっているのですが、いざDropBoxへアップロードする際に、どうもタイムアウト起こしているのか、保存できずにJobが終了するのです。
既に既知の現象のようで、調べてみるといろいろ対応方法も載っていたのですが、基本的にはDropBoxへの一度にUploadできるファイルサイズ150MBまでではないか?ってことと(実際は超過してもちゃんと保存されているようです。)、BackWPupのデフォルトの設定で600秒(10分)で、アップロードを終了することになっているので、この値を6000秒(100分)に変更するというアプローチでした。
しかし、そもそもブログのバックアップで100分もかけないといけない状態って、運用としてどうなの?というのが個人的な意見でして、デフォルトの10分でダメなら、別のアプローチ方法を考えるべきだと思います。
そこで私がとったのは、バックアップ対象ファイルを小分けしてみることです。
もともとDBとFileを合わせても55MBくらいだったのですが、バックアップを試みると[ERROR] Job Restarted, because inactivity!って赤背景で表示され、3回試みて、結局失敗に終わりセッション終了する状態でした。
そこでDBのみをバックアップ対象にしてみると、たったの8秒で無事バックアップ完了しました。DBのサイズ自体は600KB程度です。
これはファイルサイズの問題か?と思い、バックアップ対象のファイルをもともとBackWPupプラグインの中で分けられているカテゴリに合わせて、分割して、それぞれバックアップを試みてみました。
結論から言うと、無事すべてバックアップできました。( ̄ー+ ̄)
以下がそれぞれの結果です。
-
File全体 52.18MB 失敗 2113秒
root 4.56MB 成功 24秒
Content 482.98KB 成功 5秒
Plugins 12.87MB 成功(ただし一回ERROR)933秒
Themes 1.63MB 成功 9秒
Blog Uploads 32.71MB 成功 42秒
これを見て、わかるのが、ファイルのサイズは決定打になっていないことです。
そして一回エラーが起こったPluginに何か悪さしているものがいるのかも?と疑ってみました。
そこで30ばかしあるPluginをそれぞれ10個ずつに分けてバックアップしてみたところ、犯人は現れませんでした。q(´・ω・`)p
特定のプラグインでなく、総数のプラグインで問題が起こるところから、要するにファイルサイズではなく、ファイル数の問題だと結論づけました。
ちなみにPlugin以外をまとめてバックアップを試みてもエラーになりました。
最終的に私が採用したのはThemeとBlog UploadsとDBを時間差Jobでバックアップして、それ以外はたまに気が向いたときに手動でバックアップすればいいかなというあたりに落ち着きました。
参考までに。
[ad]