2017-09-19 3 views
0

Je suis en train de se connecter à une base de données qui est en cours d'exécution sur un port non défini par défaut en utilisant PSQL:PSQL ignore paramètre port

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: 

Notez que la commande -p est tout simplement ignorée. D'une certaine façon, psql suppose que 9737 est le nom d'utilisateur! Essayons d'être plus explicite:

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: 

Non, ce n'est pas bon non plus! La seule façon que je suis arrivé à ce travail était:

PGPORT=9737; export PGPORT 
psql -h wrds-pgdata.wharton.upenn.edu -d myDatabase -U myAccountName -W 

J'utilise psql (PostgreSQL) 9.5.8. Une idée est pourquoi la ligne de commande normale ne fonctionne pas?

Répondre

0

C'est vraiment étrange. J'ai utilisé psql de cette façon plusieurs fois avant et l'ai eu le travail. Et votre commande semble bien de lire man psql. Ma version est également 9.5.8 mais je n'ai pas l'ensemble exact de circonstances à tester. La seule chose que je peux soupçonner est qu'une partie du domaine est interprétée comme un argument;

WRDS -p gdata.wharton.upenn.edu

Pourriez-vous essayer;

psql -h "wrds-pgdata.wharton.upenn.edu" –p 9737 -d myDatabase -U myAccountName -W 

En outre, le manuel précise que --port=9737 est un autre pour seulement -p. Vous pourriez avoir plus de chance avec ça.