通过服务连接时使用 pg_dump

Com*_*cus 6 postgresql pg-dump

我使用连接到我的 postgres 服务器psql "service=subscription"。我如何使用该服务pg_dump

我尝试执行以下操作: pg_dump -h "service=subscription" > /home/fogest/dump.out

然而这并没有奏效。

我应该怎么做?

编辑:当我执行以下操作时出现错误:

pg_dump -h "service=subscription" odyssey_prod > /u3/jhvisser/dump.out
pg_dump: [archiver (db)] connection to database "odyssey_prod" failed: could not translate host name "service=subscription" to address: Name or service not known
Run Code Online (Sandbox Code Playgroud)

Cra*_*ger 7

您不能用来-h指定连接字符串。它只能是实际的主机名或 IP。

要连接到服务(或使用任何其他连接字符串),只需将其作为非开关参数传递:

pg_dump "service=subscription"
Run Code Online (Sandbox Code Playgroud)

或者(我知道这是违反直觉的)将其作为数据库名称传递:

pg_dump -d "service=subscription"
Run Code Online (Sandbox Code Playgroud)

这适用于任何libpq客户端(psqlpg_restore等)。