Curious installation of current postgres (in Ubuntu 9.04) ???

Dear all

I’ve installed postgres (in Ubuntu 9.04 and Gnome 2.26.1) by Synaptic-P…

Installation has finished without mistakes.

But after the first step "sudo -u postgres psql template1 " this came up and I can’t see the reason:

sudo -u postgres psql template1
could not change directory to “/home/”
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.5432”?

Help please :slight_smile:


Ups, habe in Englisch geschrieben, hier nochmal in Deutsch:
Ich habe gerade postgres über die Synaptic-Paketverwaltung installiert und keine Fehlermeldungen bekommen.
Aber schon beim 1. Schritt danach gemäß PostgreSQL › Wiki › ubuntuusers.de kam eine mir unerklärliche Fehlermeldung.

Nun, kannst du mal die gestellte Frage beantworten?

Danke für die schnelle Reaktion.

Meinst Du obige Frage

Is the server running locally and accepting
connections on Unix domain socket “/var/run/postgresql/.s.PGSQL.5432”?

?

Was müsste ich tun, um sie zu beantworten?

PS:
Wenn ich z.B.

/etc/init.d/postgresql-8.3 {start|stop|restart|status}

eingebe, kommt überhaupt keine Reaktion oder Antwort.

Das sind nun grundlegende Kentnisse des Betriebssystems.

Schau nach, ob Datenbankprozesse laufen. Schau nach, ob es dort einen Socket gibt.

Check if the server is up & running (with ps ax | grep postgres). If the server is running, connect with “sudo -u postgres psql -h localhost -p 5432 template1” and check where the unix-socket located: “show unix_socket_directory;”

You can specify this in future psql-calls with -h /path/to/your/socket_directory. Other solution: change this parameter in your postgresql.conf. (unix_socket_directory) to /var/run/postgresql.

Btw.: this is a german speaking forum, excuse me for my poor english!

Gemäß http://wiki.ubuntuusers.de/netstat habe ich im Terminal “netstat --unix” eingegeben und eine lange Liste “Aktive Sockets in der UNIX-Domäne (ohne Server)” erhalten, die aber keine Begriffe wir ‘PGSQL’ oder ‘5432’ enthält.

Hast Das gemeint?

Mal eine grundlegende Frage: wie gut kennst du dich mit Unix im Allgemeinen und Linux im Besonderen aus?

Du möchtest da einen Server bzw. einen Serverdienst betreiben und weißt nicht mal grundlegende Begriffe.

In so einem Fall ist es schwer, dir zu helfen.

Terminal:
ps ax | grep postgres
=>
“10679 pts/0 R+ 0:00 grep postgres”

Terminal:
sudo -u postgres psql -h localhost -p 5432 template1
=>
could not change directory to “/home/”
psql: could not connect to server: Connection refused
Is the server running on host “localhost” and accepting
TCP/IP connections on port 5432?

There is no /…/postgresql.conf

(Language no problem, thanks for additional answers :slight_smile: )

Nun, der MySQL-Server lies sich einfach gemäß Wiki installieren und läuft mit etlichen Zusatzprogrammen - alles nur lokal für mich selber.

Ich hatte das vor Monaten auf einem anderen Rechner ebenso auch mit Postgresql gemacht (nur installiert mit den Zusätzen pgadmin3, phppgadmin) und weiß nun nicht, was dieses Mal anders sein sollte, warum ich jetzt mehr Betriebssystemkenntnisse benötige als damals.

Nun - der Server tut nicht. Nun sollte untersucht werden, warum. Starte ihn händisch via

/etc/init.d/postgresql-8.4 start

Was passiert dabei? Schaue danach in die Logdatei unter /var/log/postgresql/postgresql-8.4-main.log , ob da was relevantes steht.

PostgreSQL braucht genauso viel Wissen um das OS wie MySQL.


Andreas

Bei mir ist es noch die Version 8.3 :slight_smile:
1v2)
Terminal:

sudo /etc/init.d/postgresql-8.3 start

=>
keinerlei Ausgabe im Terminal danach nur neue Eingebaufforderung
2v2)

/var/log/postgresql/postgresql-8.4-main.log

Der Ordner /var/log/postgresql/ ist leer auch bzgl. verborgener Dateien

Selbstversuch :rolleyes: - Wie erfahre ich welches Programm sich mit wem verbunden hat ?
(gemaess “Linux: Befehle zum Anzeigen von Netzwerkverbindungen / Sockets | Julius Beckmann”)
Terminal:

lsof -i

=>
Es kommen in der Antwort vor:
mysqld, avahi-dae, cupsd, cupsd, avahi-dae, dhclient, firefox, f102.google.com:www (ESTABLISHED)

also nichts von postgresql, obwohl es gepurged und neu installiert worden ist

Installierte Programme != laufende Programme. Außerdem würde obiges nur etwas anzeigen, wenn Du Dich via TCP/IP mit einem laufenden Server verbunden hättest, Verbindungen über Unix-Sockets würde es schon mal nicht anzeigen, dazu wäre -U nötig. Einen laufenden PG-Server würdest Du aber z.B. so angezeigt bekommen:

sudo netstat -tulpen | grep postgres

Nach allem, was Du bisher geschrieben hast, würde das bei Dir aber nix anzeigen. Der Server läuft nicht, warum auch immer. Wenn die Logs von PG nichts enthalten (leer sind), dann schau in die Logs des Betriebssystems. Und ja: Du hast ganz offensichtlich irgend etwas händisch verpfuscht, denn PG und Ubuntu sind zusammen keine Magie, das läuft einklich out-of-the-box.

Andreas

Korrekt, es zeigt nichts an.

Versuch, postgresql zu starten:
sudo /etc/init.d/postgresql-8.3 start bzw. stop
=>
“System -> Systemverwaltung -> Systemprotokoll”

  • auth.log: zeigt nur die Befehle an
  • debug: keine Reaktion
  • messages: keine Reaktion
  • syslog: keine Reaktion
  • user.log: keine Reaktion

Darf ich meiner Ubuntu-Installation noch trauen (IT-Sicherheit, …)?
Sollte ich es neu installieren?
Wenn ja, müsste ich auch die Partition /home formatieren, um Spätfolgen zu vermeiden? :confused:

Antwort von Radio Erewan: 42.

Andreas