pg_dumpall missing =连接字符串中

Nai*_*meh 4 postgresql

我正在尝试在AWS RDS实例(postgres)上运行pg_dumpall。我尝试使用psql连接到数据库:

psql -d $DBNAME -h $HOST -p $PORT -U $USERNAME
Run Code Online (Sandbox Code Playgroud)

我当然会提示输入密码,并且一切正常-我能够连接。

然后,我尝试:

pg_dumpall.exe -d $DBNAME -h $HOST -p $PORT -U $USERNAME -f testme.sql
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

pg_dumpall: missing "=" after "billingdb" in connection info string
Run Code Online (Sandbox Code Playgroud)

我正在使用git bash作为终端,在Windows 10上,我的psql版本是9.6.4。连接本身是通过端口转发完成的,因此我的主机是localhost,如果重要的话,可以使用port_forwarding操作提供的某些端口。根据文档,我做的一切正确,所以我没有主意。

Lau*_*lbe 5

该选项-d表示psql和中的其他内容pg_dumpall。该pg_dumpall文件说:

-d connstr
--dbname=connstr

指定用于连接到服务器的参数,作为连接字符串。有关更多信息,请参见第32.1.1节。

调用该选项是--dbname为了与其他客户端应用程序保持一致,但是由于pg_dumpall需要连接到许多数据库,因此连接字符串中的数据库名称将被忽略。使用-l选项可指定用于转储全局对象并发现应转储其他数据库的数据库的名称。

我的建议是忽略该选项,然后按postgres原样使用数据库。