web-dev-qa-db-ja.com

PostgreSQLのダンプと復元

Windowsでデータベースをダンプ/復元できないようです。使用される行とエラーメッセージ:

pg_dump -h localhost -U postgres --format=c -O -d ue > latest.dump
pg_restore -h localhost -U postgres -d ue latest.dump

このエラーを取得し、

pg_restore:[archiver]入力ファイルが有効なアーカイブではないようです

これとともに、

pg_dump -h localhost -U postgres -O -d ue > latest.dump
psql -h localhost -U postgres -d ue -f latest.dump

私はこのエラーを受け取ります、

psql:latest.dump:1:エラー: "UTF8"をエンコードするための無効なバイトシーケンス:0xff

私は完全に困惑しています。ほとんどの検索結果は、pg_restoreによってエクスポートされたファイルタイプで正しいpg_dump/psqlを使用していないことに関連していますが、上記のとおり、私はそれを説明しました。

latest.dumpは正しく入力されているようです。少なくともプレーンな形式では、SQLがエクスポートされ、データベースを正しくエクスポートできます。

3
Josh

どうやら問題は>演算子にありました。これを-fに変更して、ダンプ用のファイルを指定すると、問題が解決されました(プレーンフォーマットを使用)。

私は根本的な原因であったかもしれないPowershellスクリプトを書いていました。コマンドは受け入れられましたが、破損の問題があった可能性があります。

3
Josh