は、私はこの質問をDatabase Administrators 'セクションや、ここに掲載するか否かをわからないよ、そうアドバイスしてください。Djangoの "dumpdata"またはPostgresの "pg_dump"ですか?私はそれが間違って得た場合
は、私はあまり変化しないDjangoのベースのウェブサイトを持っています。 python manage.py dumpdata --all --indent=2 > backup.json
を使用し、再デプロイする必要がある場合、またはdbが破損した場合はloaddata
でデータをリロードします。 (私はauth
とcontent_types
を除外しないときに発生した整合性のエラーについて承知している)
私はバックエンドでPostgreSQLを使用していますので、私が代わりにpg_dump
を使用するために、それは「ベストプラクティス」または「賢く」であり、何か問題が起きた場合、または再配備が必要な場合は、pg_restore
?
したがってdumpdata
は、選択したアプリケーション(および/またはモデル)に関連付けられたすべてのデータをダンプし、pg_dump
はdbのフルダンプを実行します。これは同じことですか、私が忘れてしまった根本的な違いがありますか(私はDBAの経験がありません)。
私はオプションのために行くとなぜか?
1つのまたはいくつかのテーブルをダンプすることができます。私はすでに、毎時pg_dumpを使ってバックアップするスクリプトを書いています。私のDBは非常に小さいので(〜30MB)、私は大きなパフォーマンスの違いに気づいていませんでした。あなたの答えをありがとう。 –
あなたは定期的にダンピングしている場合は、WALのアーカイブを使用することをお勧めします。 https://www.postgresql.org/docs/9.2/static/continuous-archiving.html – e4c5
リンクをありがとう。私は、PostgreSQLが継続的なバックアップシステムを持っていることを知らなかった。現時点では、私は 'pg_dump'を使って、私はコミットし、変更をプライベートGitHubリポジトリにプッシュし、増分変更を確実にします。ある時点でデータを復元する能力もあり、最悪の場合のシナリオでは1時間の作業が失われます。私はまだWALの使用を検討すべきですか? WALを実装するのは時間の問題ですが、それは価値がありますか? 'pg_dump'と' git'と比べて少し複雑です。アドバイスをいただければ幸いです。 –