2017-09-19 1 views
1

In Ubuntu 16.04 I zweiten Postgres-Datenbank-Cluster erstellt, cmg, mit einem lokalen Benutzer als Benutzer admin genannt:Wie wird zum ersten Mal eine Verbindung zu einem alternativen lokalen Postgresql-Cluster hergestellt?

pg_create -u "local_username" -g "local_usergroup" -d /path/to/data/dir 9.5 cmg 

Der Cluster mit gestartet wurde:

pg_ctrlcluster 9.5 cmg start 

, die erfolgreich ausgeführt wird (pg_lsclusters zeigen beide sind online)

Das Problem ist, ich kann nicht mit dem Cluster mit psql verbinden, wie es normalerweise getan wird.

ich versuchte mit:

psql -h 127.0.0.1 -w -p5433 -U local_username 

, die mit fehlschlägt:

psql: fe_sendauth: no password supplied" 

Gibt es eine Möglichkeit, um eine Verbindung mit dem spezifischen Cluster?

+0

versuchen Sie 'psql -h your_socket_dir -w -p5433 -U postgres' und überprüfen Sie, ob Sie den Benutzer' local_username' haben. Übrigens - hast du irgendein Passwort eingegeben? .. falls es nicht gefragt wurde, versuche es mit '-W' –

+0

Danke @ Vao-Tsun dein Vorschlag mit leichter Änderung funktioniert. Endete mit: 'psql -h/tmp/-p 5433 -d potsgres'. Der aktuell angemeldete Benutzer ist der Benutzer admin ('local_user'). Bitte fügen Sie es als Antwort hinzu. – Marked

Antwort

0

Verwendung psql -h your_socket_dir -p5433 -U postgres arbeiten (verwendet Peer Auth standardmäßig zu verbinden - so hoch chahce anmelden wothout Passwort)

einmal angemeldet - einrichten Passwort (Benutzer erstellen, wenn erforderlich) und sie aus der Ferne

psql -h 127.0.0.1 -p5433 -U local_username 

in Ihrer Verbindungszeichenfolge verbinden verwenden Sie hatten -w fragt nie nach einem Passwort https://www.postgresql.org/docs/current/static/app-psql.html, die standardmäßig nur für lokale Verbindungen arbeiten würde

0

denke ich die Standard-pg_hba.conf, wenn Sie ein neues Cluster starten erwartet Sie mit peer Verbindungen zu authentifizieren, so müssen Sie Benutzer zu Ihrem lokalen Benutzer ändern, bevor

[[email protected]~]# su - local_username 
>> Enter password: 
> password 
[[email protected]~]# psql -h 127.0.0.1 -p 5433 

Anschluss Sie können Ihre pg_hba.conf Datei überprüfen in /path/to/data/dir/pg_hba.conf zu sehen, wie es von Ihnen erwartet, zu authentifizieren.

Alternativ, wenn Sie keinen Zugriff als 'local_username' dann statt su zu postgres Benutzer in den obigen Anweisungen erhalten und es sollte lokal

Verwandte Themen