2017-03-02 6 views
0

1つのデータベースからpg_dumpを作成しました。PSQL - "pg_dump"からインポートする際のエラー

pg_dump postgres://a/b/c > file.sql

を行うことでそれから私は使用して別のデータベースにインポートした後。

psql posgres://x/y/z < file.sql

私は輸入
エラー1中に2つの繰り返しエラーが発生します: ERROR: must be owner of extension plpgsql
誤差2:ユーザ名ように、これらの2つの別々のHerokuの(無料)のpostgresデータベースですERROR: role username does not exist

、データベースのURIとそれでは、どちらも全く異なっています。

これらのエラーメッセージには何か問題はありますか?

注:エクスポート(pg_dump)はうまく動作します。ああ、輸入はそれが完全に働いているようにも見えます。

注:Cygwin(Postgresクライアント)とHerokuを使用しているため、現在のSOのソリューションは適用されません(sudoが使用されます)。
誤差2:pg_dump --no-acl --no-ownerをpg_dumpのために追加オプションを渡してみERROR: must be owner of extension plpgsql
を修正するにはERROR: role username does not exist

答えて

0

編集
のMichałMłoźniakは

pg_dump pg_dump --no-acl --no-owner

しかし、これだけの修正を提案しました。結果ファイルに所有権、特権などを設定するためのコマンドがありません

+0

私はすでにダンプを作っていますが、私はまだこれを使うことができます。もしそうなら、なぜですか? – Mark

+0

別のダンプを作成する必要があります。これらのコマンドはすでにファイル内にあるためです。何かに 'ALTER TABLE table1 OWNER 'のようなもの。 'pg_dump -Fc'を実行し、' pg_restore --no-owner --no-acl'を使ってそれをインポートすることもできます。 2番目のオプションには引き続き所有権コマンドが含まれていますが、 'pg_restort'を使ってインポートを行う際に無視することができます。 –

+0

私はpsqlを使用しませんrestore psql posgres:// x/y/z Mark

関連する問題