web-dev-qa-db-ja.com

pg_restoreは既存のテーブルを上書きしますか?

2つのホストサーバーs1とs2があるとします。両方のサーバーには、n1という名前のスキーマがあり、s1のスキーマn1に存在するテーブルの一部に変更を加えました。サーバーs2のスキーマn1にも同じ変更を加えたいです。私がやろうとしているのは、pg_dumpを使用してサーバーs1のスキーマn1のバックアップを取り、pg_restoreを使用してサーバーs2に復元することです。サーバーs2に同じテーブルセットを持つ同じスキーマn1が既に存在するため、私の質問は次のとおりです。復元プロセスは何をしますか?既存のテーブルを上書きするか、サーバーs2の既存のスキーマを削除し、サーバーs1からのダンプを使用して復元する必要がありますか?

11
Karthik

--cleanpg_restoreオプションを使用すると、新しいテーブルが作成される前に古いテーブルが削除されます。

--cleanオプションを使用しない場合、テーブルが既に存在するというエラーメッセージが表示されますが、pg_restoreオプションを使用しない限り、--exit-on-errorは処理を続行します。

26
Laurenz Albe