【发布时间】:2017-09-19 21:16:07
【问题描述】:
我正在尝试使用 PSQL 连接到在非默认端口上运行的数据库:
PSQL SYNOPSIS
psql [option...] [dbname [username]]
psql -h wrds-pgdata.wharton.upenn.edu –p 9737 -W myDatabase myAccountName
psql: warning: extra command-line argument "myDatabase" ignored
psql: warning: extra command-line argument "myAccountName" ignored
Password for user 9737:
请注意 -p 命令被简单地忽略了。不知何故 psql 假定 9737 是用户名!让我们尝试更明确:
psql -h wrds-pgdata.wharton.upenn.edu –p 9737 -d myDatabase -U myAccountName -W
psql: warning: extra command-line argument "–p" ignored
psql: warning: extra command-line argument "9737" ignored
Password for user myAccountName:
不,那也不好! 我让它工作的唯一方法是:
PGPORT=9737; export PGPORT
psql -h wrds-pgdata.wharton.upenn.edu -d myDatabase -U myAccountName -W
我正在使用 psql (PostgreSQL) 9.5.8。知道为什么普通命令行不起作用吗?
【问题讨论】:
-
我遇到了和你一样的问题。无论我做什么,端口参数都会被完全忽略。你找到解决方案了吗?
-
@BlueMagma 不,我没有。我能够解决这个问题的唯一方法是将端口号导出到 PGPORT 变量,如上所述:PGPORT=9737;导出 PGPORT
标签: psql