12

我正在尝试对pg_restore系统上的命令进行故障排除。我已经安装了Postgresapp,并且在我的 PATH 中包含了它的二进制文件psql和之类的命令pg_dump似乎可以正常工作,并且运行which pg_restore会给出预期的结果。

$ which pg_restore
/Applications/Postgres.app/Contents/MacOS/bin/pg_restore

问题是它pg_restore似乎没有做任何事情。当我在终端中运行它时,不会打印输出到控制台或日志。无论我传递什么参数,包括--verbose开关,这都是真的。运行它确实会导致 pg_restore 进程出现在我的活动监视器中,但该进程不使用任何 CPU。除此之外,什么也没有发生。

有没有其他人看到这个问题?你pg_restore对上班有什么建议吗?

4

2 回答 2

17

我想我想通了。

我正在运行的命令在用户名之后包含一个额外的换行符。

如,我试图执行这个

pg_restore --verbose --clean --no-acl --no-owner -h localhost -U myusername
-d mydb latest.dump

而不是这个

pg_restore --verbose --clean --no-acl --no-owner -h localhost -U myusername -d mydb latest.dump

出于某种原因,额外的换行符使事情变得混乱。一旦我删除它 pg_restore 就可以正常工作。

于 2013-06-26T20:40:07.670 回答
0

我也无缘无故被卡住了。我从pg_restore -U seed -h localhost -p 5432 -f dump.backup -C --verboseto更改为pg_restore -d seed -U seed -h localhost -p 5432 < dump.backup,它起作用了。

如果这可以帮助某人..

于 2021-12-21T12:01:12.473 回答