pg_restore 无限期地挂在终端中,详细模式下输出为零

flw*_*lwd 6 postgresql pg-restore

我正在尝试恢复在全新安装的版本 14.1 上在版本 11.7 上创建的 PostgreSQL 备份。

运行 pg_restore 命令时,即使启用了详细日志记录,它也会无限期地挂在终端上,输出为零。尝试以不存在的用户身份进行连接甚至不会给出错误。通过 psql 连接工作正常,我可以毫无问题地执行命令。

使用以下命令创建转储: pg_dump -Fc -f file.pgdump -d mydb

我尝试将转储从另一台主机恢复到有问题的主机(将其恢复到其自己的 PostgreSQL 14.1 本地实例没有问题的主机),这导致了同样的问题。这是我正在使用的命令:pg_restore -f file.pgdump -U user -j 6 --verbose

事实上,我从pg_restore命令得到的反馈为零,这使得诊断变得相当困难。可能是什么问题?

Dan*_*ité 13

这是我正在使用的命令: pg_restore -f file.pgdump -U user -j 6 --verbose

这是假设这-f filename是转储文件,但事实并非如此。它引入了一个输出文件。

从联机帮助页:

-f filename --file=filename 指定生成脚本的输出文件,或与 -l 一起使用时的列表。使用 - 作为标准输出。

概要是:pg_restore [connection-option...] [option...] [filename]

它期望转储文件的路径位于命令末尾,而不是作为选项。

您的调用不会发生任何事情,因为它正在等待标准输入中的转储内容,因为命令末尾没有指定文件。