私たちはpostgresデータベースにデータを格納するシステムを持っています。場合によっては、データベースのサイズが数GBに拡大しました。postgresでの遅延インデックス作成
このシステムをアップグレードすると、そのデータベースのデータがバックアップされ、最後にデータベースに復元されます。膨大な量のデータがあるため、インデックス作成は復元中に完了するまで(約30分)かかるため、アップグレードプロセスが遅れることがあります。
データコピーとインデックス作成を2段階に分ける方法はありますか?データをコピーしてアップグレードを完了し、後でインデックス作成を行い、後でバックグラウンドで実行できますか?
ありがとうございます!
バックアップされたデータを復元するのに 'psql'を使います。 'pg_restore'の' -j'オプションは 'psql'よりも比較的優れていますか?また、 'psql'は' CREATE INDEX CONCURRENTLY'を使用/サポートしていますか? – Maddy
'psql'は通常、' pg_dump'が生成したものだけを実行し、 'pg_dump'はそれを作成する必要があります。いいえ、そうではありません。はい、 '-j'が助けになります。 'pg_dump -Fc'を使い、' pg_restore -j'と並行復元モードを使います。 –
pg_dumpによって生成されたファイルから 'CREATE INDEX'コマンドを削除し、後で実行するために別のファイルに入れることはできますか?このアプローチはまったく機能しますか?注文に問題はありますか? – Maddy