Je démarre une instance de postgres 9.3 sur un serveur Ubuntu 12.04:
~# service postgresql start
* The PostgreSQL server failed to start. Please check the log output.
[fail]
le démarrage échoue, mais il ne laisse aucun journal, ce fichier est vide:
tail /var/log/postgresql/postgresql-9.3-main.log
et il n'y a pas d'autres fichiers dans ce répertoire: / var / log / postgresql /
Quel est le meilleur moyen de résoudre ce problème?
postgresql
Max L.
la source
la source
su - postgres; /usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data
et voyez ce qu'il vous donne. Vous devrez peut-être modifier le nom d'utilisateur et les chemins d'accès en fonction de votre configuration.-d 3
à lapostgres
commande. Cela permettra une sortie de débogage plus complète écrite dans le journal. Vous pouvez réduire la sortie de débogage en la réglant sur 1 ou 2, ou l'augmenter en la modifiant en 4 ou 5. De plus, quelle est la sortie dewhich pgsql
?Réponses:
Essayez de l'exécuter manuellement avec le débogage activé. Cela entraînera son exécution au premier plan et l’impression des messages d’erreur en erreur standard, tout en augmentant la verbosité.
Je pense que ce sera la bonne ligne de commande pour PostgreSQL 9.3 sur Ubuntu, mais cela pourrait nécessiter quelques ajustements très légers (remarque: line est divisé pour la lisibilité; vous pouvez le recombiner en une seule ligne (sans la barre oblique inverse) si vous le souhaitez):
Le début correspond à l'emplacement du
postgres
fichier binaire, puis nous activons le débogage et le définissons au niveau 3 (vous pouvez l'ajuster vers le haut ou le bas pour augmenter ou réduire la verbosité). Ensuite, nous spécifions le répertoire de données et le fichier de configuration par lequel commencer. Ce devraient être les valeurs par défaut pour Ubuntu Server 12.04, je pense.J'espère que cela vous donnera suffisamment d'informations pour déterminer où se situe le problème.
la source
service
commande est simplement un wrapper pratique autour du/etc/init.d/
script qui démarre et arrête réellement le processus. Vous devrez consulter ce script pour voir ce qu'il fait différemment de celui que vous exécutez manuellement. Faire quelque chose comme celabash -x /etc/init.d/postgresql start
pourrait être un bon endroit pour commencer vos recherches.