3

如何恢复由命令生成的文件:

pg_dump -i -h localhost -p 5432 -U user -F c -b  -f bkp_file.backup "alfa"

我尝试使用 psql -U user -d alfa-f bkp_file.backup

但是我有很多关于无效字符的错误。所以我不确定我是否正确地执行了 pg_dump。

错误输出示例:

psql:cmdb_21-11-2012.backup:1399: invalid command \3?6IÅñå|J‼▼§↓OTaIEDóP&5¶◄▲Ct±^ºO-²
psql:cmdb_21-11-2012.backup:1400: invalid command \ÖÿYÇ/µèI=ÜdUEàmß¿ê÷E|>I▬ßf♂*»Å?B/÷
IYñAªóS`Wö3ßAÆ?l*ádECIY‼)á¢'ul#`aåAArZæp2_í_ÉY-ëU&>ïIìO·▼$5

实际上,转储的备份文件中有很多这样的字符

4

1 回答 1

6

您正在转储数据的压缩形式并使用需要未压缩形式的程序恢复它。从 pg_dump 行中删除-F c或使用pg_restore

于 2012-11-22T13:49:50.367 回答