Hab auch gleich mal versucht auf 8.4 upzugraden. Leider funktioniert nun einiges nicht mehr. Das ganze habe ich per Installer gemanagt. Der Server startet ohne Probleme per serverctl.sh mit pgAdmin III kann ich auch darauf zugreifen. Aber in der Konsole funktioniert es nicht. Mit psql -p 5433 bekomme ich folgenden Error
sudo psql -p 5433
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5433"?
Auch in var/run/postgresql ist keine Datei vorhanden (die Datei von 8.3 hatte ich in meiner panischen Suche im Internet durch Hinweiße gelöscht. Vorher konnte ich wenigstens per psql -p 5432 darauf zugreifen.)
Liegt vielleicht das ganze daran das noch postgresql 8.3 installiert ist und dort schon die Zugriffsrechte definiert wurden und daher für 8.4 nicht verwendet werden?
Verwende Ubuntu 9.04
[EDIT]: Habe nun den postgres-client-8.4 installiert nun funktioniert anscheinend psql -p 5433, nur bekomme ich noch ein:
psql: FATAL: password authentication failed for user “andre”. Soweit ich weiß muss dies (Passwort) in der pg_hba.conf festgelegt werden, nur leider ist keine für 8.4 vorhanden.
So es funktioniert jetzt schon mal alles über der Konsole. Aber: Meine App sucht immer nach den UNIX Socket in ‘var/run/postgresql/…’,aber da ist keine Datei.
Danke Andreas, hat funktioniert. Aber ich habe leider noch ein Problem
andre@andre-desktop:~$ psql
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
andre@andre-desktop:~$ su andre
Passwort:
andre@andre-desktop:~$ psql
psql: FATAL: database "andre" does not exist
andre@andre-desktop:~$
Ich habe mich als Superuser angelegt
createuser --superuser andre -U postgres
Warum kann ich mich dann nicht in die DB einloggen wenn ich mich schon an meinen PC angemeldet habe sondern muss mich erneut Authentifizieren? Außerdem sucht er den Socket im default-Pfad
Installiert habe ich Postgres unter ‘/opt/PostgreSQL/8.4’
Einen Pfad Habe ich in ‘/etc/profile’ gelegt
export PATH=/opt/PostgreSQL/8.4/bin:$PATH
Meine pg_hba.conf
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
# IPv6 local connections:
host all all ::1/128 md5
habe ich doch festgelegt, das sich jeder Anmelden kann ohne PW.
Wo ist denn nun diese Socke? Hint: man kann auch diese als Parameter beim psql angeben, mittels --port.
Und hast Du eine Datenbank mit diesem Namen?
Ich habe mich als Superuser angelegt
createuser --superuser andre -U postgres
>
> Warum kann ich mich dann nicht in die DB einloggen wenn ich mich schon an meinen PC angemeldet habe sondern muss mich erneut Authentifizieren?
Das regelt pg_hba.conf
> Außerdem sucht er den Socket im default-Pfad
>
> Installiert habe ich Postgres unter '/opt/PostgreSQL/8.4'
> Einen Pfad Habe ich in '/etc/profile' gelegt
Tja, da ist $irgendwas wohl falsch gelaufen. Gibt es kein fertiges Paket für Deine Distri?
> ```text
export PATH=/opt/PostgreSQL/8.4/bin:$PATH
Meine pg_hba.conf
TYPE DATABASE USER CIDR-ADDRESS METHOD
“local” is for Unix domain socket connections only
local all all trust
IPv4 local connections:
host all all 127.0.0.1/32 trust
IPv6 local connections:
host all all ::1/128 md5
>
> habe ich doch festgelegt, das sich jeder Anmelden kann ohne PW.
Hast Du auch die richtige pg_hba.conf editiert?
Hint:
```text
retschmer@tux:~$ psql test
psql (8.4.0)
Type "help" for help.
test=# show hba_file;
hba_file
--------------------------------------
/etc/postgresql/8.4/main/pg_hba.conf
(1 row)
test=*#
Nein, mit den Namen Andre nicht. Aber das war nur mal so um zu zeigen das ich mich ein zweites mal anmelden muss. Danach findet es auch meine DB’en. Vor dem zweiten Auth halt Sockenfehler.
und dein Hinweiß hat mich darauf gebracht in diesem Verzeichnis auch mal zu schauen. Und siehe da … Aber WAARRRRUMMM gibt es zwei? kotz
Ich danke euch auf jedenfall sehr! Hoffe das nächste upgrade läuft etwas einfacher.
[EDIT] Habe festgestellt das einiges (wie z.b. reload_configuration) in ‘/var/lib/postgresql/8.4/’ die dateien suchen. Mal schauen wie ich das lösen kann