毎晩、以下を使用して 200 GB のデータベースをダンプして復元します。
# Production, PG 9:
pg_dump DATNAME | some-irrelevant-pipe
# QA, PG 8.3:
some-irrelevant-pipe | psql -d DATNAME
8.3 で 9 からのダンプを復元するには、テキスト ベースのバックアップを使用する必要がありました。
復元は非常に遅く、不当に遅いです。ログがこれらでいっぱいであることに気付きました:
2011-05-22 08:02:47 CDT LOG: checkpoints are occurring too frequently (9 seconds apart)
2011-05-22 08:02:47 CDT HINT: Consider increasing the configuration parameter "checkpoint_segments".
2011-05-22 08:02:54 CDT LOG: checkpoints are occurring too frequently (7 seconds apart)
2011-05-22 08:02:54 CDT HINT: Consider increasing the configuration parameter "checkpoint_segments".
私の質問は: の設定がcheckpoint_segments
ボトルネックである可能性はありますか? プロセスをスピードアップするために調整できる他のパラメーターは何ですか?
そのマシンには 4 GB の RAM があります。postgresql.conf のその他の関連する可能性のある設定は次のとおりです。
shared_buffers = 1000MB
work_mem = 200MB
maintenance_work_mem = 200MB
effective_cache_size = 2000MB
# fsync and checkpoint settings are default