PostgreSQL Server startet nicht auf Ubuntu 10.4 Server

Fragen und Probleme zur Installation von PostgreSQL (hauptsächlich Binary Packete).
Antworten
Lammbader
Neuer Benutzer
Beiträge: 3
Registriert: Mo 1. Aug 2011, 14:06

PostgreSQL Server startet nicht auf Ubuntu 10.4 Server

Beitrag von Lammbader » Mo 1. Aug 2011, 18:07

Auf einem frischen Virtual Server unter Ubuntu 10.4 („Lucid“) soll der Caldav-Server „Davical“ laufen. Die Installation des Pakets davical aus dem Repository löst die Abhängigkeiten der folgenden Pakete auf:

Code: Alles auswählen

davical (0.9.9.4-1), libnet-daemon-perl (0.43-1), postgresql-8.4 (8.4.8-0ubuntu0.10.04), libyaml-syck-perl (1.07-1build1), php5 (5.3.2-1ubuntu4.9), libdbi-perl (1.609-1build1), libapr1 (1.3.8-1ubuntu0.3), libapache2-mod-php5 (5.3.2-1ubuntu4.9), libaprutil1-ldap (1.3.9+dfsg-3ubuntu0.10.04.1), xml-core (0.13), apache2-mpm-prefork (2.2.14-5ubuntu8.4), libexpat1 (2.0.1-7ubuntu1), apache2-utils (2.2.14-5ubuntu8.4), apache2.2-common (2.2.14-5ubuntu8.4), libawl-php (0.46-1), libaprutil1-dbd-sqlite3 (1.3.9+dfsg-3ubuntu0.10.04.1), apache2.2-bin (2.2.14-5ubuntu8.4), ssl-cert (1.0.23ubuntu2), postgresql-common (106ubuntu1), libxml2 (2.7.6.dfsg-1ubuntu1.2), postgresql (8.4.8-0ubuntu0.10.04), postgresql-client-8.4 (8.4.8-0ubuntu0.10.04), php5-pgsql (5.3.2-1ubuntu4.9), sgml-base (1.26), libplrpc-perl (0.2020-2), libdbd-pg-perl (2.16.1-1), postgresql-client-common (106ubuntu1), libpq5 (8.4.8-0ubuntu0.10.04), libaprutil1 (1.3.9+dfsg-3ubuntu0.10.04.1), php5-common (5.3.2-1ubuntu4.9), libyaml-perl (0.71-1)


Dabei kam es zu zahlreichen Fehlern, weil die Locale des Servers nicht mit den Installationsskripten zusammenpasste:

Code: Alles auswählen

 (Ausschnitt) 
Setting up postgresql-common (106ubuntu1) ...
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = (unset),
    LC_ALL = (unset),
    LANG = "de_DE.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = (unset),
    LC_ALL = (unset),
    LANG = "de_DE.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = (unset),
    LC_ALL = (unset),
    LANG = "de_DE.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Adding user postgres to group ssl-cert
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = (unset),
    LC_ALL = (unset),
    LANG = "de_DE.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = (unset),
    LC_ALL = (unset),
    LANG = "de_DE.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
usw.


Der Start des PostgreSQL-Servers gelang nicht, ob es eine Fehlermeldung gab, weiß ich nicht mehr.

Nach Entfernen der genannten Pakete, Umstellen der Locale:

Code: Alles auswählen

export LANGUAGE=de_DE.UTF-8
export LANG=de_DE.UTF-8
locale-gen de_DE.UTF-8
export LC_ALL=de_DE.UTF-8
dpkg-reconfigure locales


lief die Installation ohne Fehlermeldung durch. Der PostgreSQL-Server startet jedoch nicht:

Code: Alles auswählen

lammbader@server:~# /etc/init.d/postgresql-8.4 start
 * Starting PostgreSQL 8.4 database server
 lammbader@server:~# psql
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"?


Das Verzeichnis /etc/postgresql/8.4/main/ war leer. Wenn ich es richtig verstehe, sind dort nach der Installation die Konfigurationsdaten abgelegt? Ich habe diese händisch von einer lokalen Installation auf den Server kopiert, dies ergibt nur eine unspezifische Fehlermeldung beim Start des Servers:

Code: Alles auswählen

lammbader@server:~#/etc/init.d/postgresql-8.4 start
 * Starting PostgreSQL 8.4 database server
 * Error: could not exec /usr/lib/postgresql/8.4/bin/pg_ctl /usr/lib/postgresql/8.4/bin/pg_ctl start -D /var/lib/postgresql/8.4/main -l /var/log/postgresql/postgresql-8.4-main.log -s -o  -c config_file="/etc/postgresql/8.4/main/postgresql.conf" :


Kann dies Verhalten auf die missglückte Installation am Anfang zurückzuführen sein? Was könnte ich tun?

ads
Erfahrener Benutzer
Beiträge: 4148
Registriert: Mi 8. Feb 2006, 10:58
Wohnort: MD
Kontaktdaten:

Beitrag von ads » Di 2. Aug 2011, 11:45

Ich hab da mal was geschrieben ...

locales on Ubuntu - ads' corner
Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören Bild

Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

PostgreSQL Service & Support

Lammbader
Neuer Benutzer
Beiträge: 3
Registriert: Mo 1. Aug 2011, 14:06

Beitrag von Lammbader » Di 2. Aug 2011, 16:31

Funktioniert. Vielen Dank!

Lammbader
Neuer Benutzer
Beiträge: 3
Registriert: Mo 1. Aug 2011, 14:06

Beitrag von Lammbader » Do 4. Aug 2011, 00:04

Nun läuft alles zufriedenstellend. Vielen Dank noch einmal!

Ich war allerdings nicht in der Lage, Veränderungen, die durch die erste Installation mit der falschen/ungenügenden locale entstanden waren, von Hand wieder geradezubiegen.

Weil ich mir nicht anders zu helfen wusste, habe ich den ganzen Server neu aufgesetzt. Das war in dem Fall nicht schlimm, weil ich den Vserver ganz neu zu diesem Zweck angemietet hatte. Wäre es ein bestehendes System gewesen, wäre das nicht oder nicht so leicht möglich gewesen.

In dem Tutorial in der c't, nach dem ich vorgegangen bin, wird das Problem kurz erwähnt, aber dass es auf den Ubuntu-Server zutrifft, war nicht zu erkennen.

Jedenfalls, ich würde den Bug gern melden. Auf welcher Seite liegt denn das Problem, bei Ubuntu, bei PostgreSQL oder bei davical?

Gruß Tobias

ads
Erfahrener Benutzer
Beiträge: 4148
Registriert: Mi 8. Feb 2006, 10:58
Wohnort: MD
Kontaktdaten:

Beitrag von ads » Do 4. Aug 2011, 00:13

Bei Ubuntu, PostgreSQL kann nur die Locale nutzen, die da sind. Ist aber selbst nicht für die Einrichtung der korrekten Locale zuständig.
Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören Bild

Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

PostgreSQL Service & Support

Antworten