0

私が行って、私の生産environtmentから毎日ダンプを取る:その後、私はステージングにかけ、これを転送し、最初のテーブルをドロップして、ステージングデシベルをインポートPostgresの毎日のデータダンプと水分によるディスクスペースの詰まり?

pg_dump <database name> > dump_<date>.sql 

を:その後、

drop schema public cascade; 
create schema public; 

とやって次のようになります。

psql <database name> < dump_<date>.sql 

ただし、ステージングDBが毎日異常に大きくなっているようです。この時点で、テーブル&のデータを削除した後でも、DBフォルダには150GBの空き容量があります。

ログやメタデータがフォルダを詰まらせるような感じです。

これを行うには適切な方法がありますか、またはDBを削除して毎回再初期化する以外に、この余分なデータを消去する良い方法があります。 ありがとう!

+0

私の答えに示唆されているようにチェックアウトレプリケーションを行いましたか? – e4c5

+0

チェック、ありがとう! – emraldinho

+0

こんにちは、私の古い答えのいくつかを通って、これを見てきました。どうだった? – e4c5

答えて

1

もっと良い方法があります。

https://www.postgresql.org/docs/9.5/static/high-availability.html

データベース・サーバは、プライマリサーバに障害が発生した場合に迅速上 を取るための第2のサーバー(高可用性)を許可するために一緒に作業することができ 、または には、いくつかのコンピュータが同じデータを提供できるようにする(負荷分散)。 理想的には、データベースサーバーはシームレスに連携できます。ウェブサーバ は静的なウェブページを提供するだけで簡単に組み合わせることができます 複数のマシンへのWeb要求のロードバランシング。実際には、読み取り専用の データベースサーバも比較的簡単に組み合わせることができます。残念ながら、 ほとんどのデータベースサーバーは要求の読み取り/書き込みが混在しており、 の読み取り/書き込みサーバーは結合するのがはるかに困難です。これは、 の読み取り専用データを各サーバーに1回だけ配置する必要がありますが、 への書き込みはすべてのサーバーに伝播する必要があり、将来の読み取りのためにこれらのサーバーへの の要求が一貫した結果を返す必要があるからです。

ドキュメントを読むと、最初は非常に威圧的だったようです。しかし実際には、クラスタ全体を1回ダンプしてpostgresql.confにWALログを記録するだけで、WALアーカイブファイルを毎日、毎週、または毎月別のサーバにコピーすることができます。

関連する問題