Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
#1 26/04/2010 11:43:07
- Olivier
- Membre
Serveur muet
Bonjour,
Je suis sous debian Leny et postgres 8.3.
Mon serveur fonctionnait bien jusqu'à jeudi dernier, et depuis, sans manip de ma part celui ci est arrété et je n'ai plus de message d'erreur ni de log.
a tout hasard j'ai tenté un rboot de la machine, mais ca ne change rien.
si je fais un :
oxygene:~# /etc/init.d/postgresql-8.3 start
oxygene:~# ps aux | grep postgres
root 2370 0.0 0.0 1716 516 pts/0 S+ 11:39 0:00 grep postgres
oxygene:~#
Comme vous voyez : pas de message d'erreur. J'ai beau chercher je ne trouve pas de logs.
Auriez vous une idée, une piste ?
D'avance merci pour vos lumières,
Olivier
Hors ligne
#2 26/04/2010 12:06:31
- gleu
- Administrateur
Re : Serveur muet
Essayer de le démarrer manuellement. Quelque chose du style :
postgres -D /var/lib/postgresql/8.3/main -c "logging_collector=off" -c "config_file=/etc/postgresql/8.3/main/postgresql.conf"
Vous devriez voir les traces directement sur la console.
Guillaume.
Hors ligne
#3 26/04/2010 12:10:53
- etpaf
- Membre
Re : Serveur muet
Bonjour,
Concernant les logs, je vous propose de jouer les commandes suivante :
mkdir /pghome/data/pg_log (pghome chez moi est /usr/local/pgsql)
chown postgres:postgres /pghome/data/pg_log -R
Et ajouter ceci dans la fin de votre fichier /pghome/data/postgresql.conf
#Paramètrage des logs
log_destination = 'stderr'
redirect_stderr = on
log_directory = 'pg_log'
log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'
log_rotation_age = 1d
log_rotation_size = 100MB
client_min_messages = warning
log_connections = on
log_disconnections = on
Relancez ensuite postgres et postez le contenu du fichier qui sera dans le répertoire /pghome/data/pg_log il sera sans doute plus facile de vous répondre.
Hors ligne
#4 26/04/2010 13:50:40
- Olivier
- Membre
Re : Serveur muet
Merci pour cette bonne piste de recherche
Ma base n'est pas dans le répertoire par défaut, j'avais fait un :
/usr/lib/postgresql/8.3/bin/initdb -d /var/PG/DATABASES
Du coup j'ai essayé ta manip en modifiant les chemin d'accès comme ci-dessous
postgres@oxygene:/usr/lib/postgresql/8.3/bin$ ./postgres -D /var/PG/DATABASES/ -c "logging_collector=off" -c "config_file=/var/PG/DATABASES/postgresql.conf"
LOG: database system was shut down at 2010-04-21 10:05:49 CEST
LOG: autovacuum launcher started
LOG: database system is ready to accept connections
Donc il semble que mon pb est que le lanceur postgres ne sait pas lancer ma base déplacée.
Avez vous une idée de ce qu'il faut que je modifie pour que le lanceur ci-dessous fonctionne ? (une variable d'environnement par ex ?)
/etc/init.d/postgresql-8.3 start
Hors ligne
#5 26/04/2010 13:58:42
- gleu
- Administrateur
Re : Serveur muet
Le problème n'est pas le lanceur du projet PostgreSQL, mais celui qu'impose Debian.
Je suppose que tu n'as pas fait un pg_createcluster pour créer ton cluster dans ton répertoire spécifique. Ça va te compliquer vraiment la vie (et on dit pas merci à Debian :-[ ).
Bref, les deux solutions "simples" sont :
* utiliser un autre script de démarrage
* renommer son répertoire de données, faire un pg_createcluster, puis virer le nouveau répertoire créé par le pg_createcluster pour le remplacer par son répertoire des données (sans oublier de déplacer les fichiers de configuration dans /etc/...)
Bon courage
Guillaume.
Hors ligne
#6 26/04/2010 14:06:29
- Olivier
- Membre
Re : Serveur muet
Je te remercie.
Un nouveau script de démarrage fera bien l'affaire.
Il n'y aura que ceci :
/usr/lib/postgresql/8.3/bin/postgres -D /var/PG/DATABASES > /var/log/postgresql/postgres-main_8.3_stdout.log 2>&1 &
Sinon pour ma culture, quelle est la distrib "sans pb" pour postgres ?
Hors ligne
#7 26/04/2010 14:14:21
- gleu
- Administrateur
Re : Serveur muet
Debian est généralement bien mais ils ont cherché à faire trop bien, ce qui emmer^Wpose des problèmes à pas mal de gens. Personnellement, j'aime beaucoup les packages de Fedora (qu'on ne m'accuse pas de partialité, j'utilise une Ubuntu ).
Pour le script, je te conseille le script proposé par PostgreSQL dans les modules contrib. Pas sûr qu'il soit disponible dans le package contrib de Debian vu qu'ils en proposent un autre. Tu peux le récupérer ici :
http://git.postgresql.org/gitweb?p=post … ux;hb=HEAD
Guillaume.
Hors ligne
#8 26/04/2010 14:51:18
- Marc Cousin
- Membre
Re : Serveur muet
gleu, tu es injuste vis à vis de debian. Leur packaging est vraiment extrêmement pratique, même si non standard : ce qu'ils ont apporté permet de gérer de façon transparente et sans souci plusieurs clusters, dans plusieurs versions en même temps, avec le minimum d'ennuis. La seule contrainte est d'utiliser les outils fournis : pg_createcluster, pg_lscluster …
Bref, si on utilise debian, évidemment, il est préférable d'utiliser leur méthode.
Marc.
Hors ligne
#9 26/04/2010 14:54:01
- gleu
- Administrateur
Re : Serveur muet
Pratique mais buggé. Et ça modifie tellement le logiciel fourni que ça en devient ridicule. Je préfère de loin les packages Fedora. Mais bon, c'est mon avis perso. Chacun le sien
Guillaume.
Hors ligne
#10 26/04/2010 15:07:48
- Olivier
- Membre
Re : Serveur muet
Merci ce script est parfait !
Pour ceux qui repasseront par là, voici les params pour mon environnement :
## EDIT FROM HERE
# Installation prefix
prefix=/usr/lib/postgresql/8.3
# Data directory
PGDATA="/var/PG/DATABASES"
# Who to run the postmaster as, usually "postgres". (NOT "root")
PGUSER=postgres
# Where to keep a log file
PGLOG="/var/log/postgresql/postgres-main_8.3_stdout.log"
Puis j'ai créé un petit alias dans mon .bashrc :
oxygene:~# alias
alias postgres='/etc/init.d/postgresql-8.3'
oxygene:~# postgres stop
Stopping PostgreSQL: pg_ctl: PID file "/var/PG/DATABASES/postmaster.pid" does not exist
Is server running?
oxygene:~# postgres start
Starting PostgreSQL: ok
oxygene:~#
Merci à etpaf pour sa solution que finalement je n'ai pas testé puisque la première m'a conduit à résoudre mon problème.
Et un grand merci à gleu.
Pour moi le sujet est clos.
Hors ligne
#11 26/04/2010 15:15:21
- Marc Cousin
- Membre
Re : Serveur muet
gleu : intéressante discussion. Quel(s) bug(s) rencontres tu ?
Marc.
Hors ligne
#12 26/04/2010 22:10:16
- gleu
- Administrateur
Re : Serveur muet
Marc : ajout une "include toto.conf" et tu verras qu'il te sera impossible de redémarrer PostgreSQL sous Debian. Fais-le sur n'importe quelle distrib et, ho, quelle surprise, ça fonctionne !
Guillaume.
Hors ligne
#13 27/04/2010 10:24:06
- Marc Cousin
- Membre
Re : Serveur muet
Effectivement. Je viens d'ouvrir un rapport de bug et de fournir un patch au mainteneur debian pour corriger ça. Tu aurais du te plaindre avant, plutôt que de dire du mal de Debian
Marc.
Hors ligne
#14 27/04/2010 10:56:57
- Marc Cousin
- Membre
Re : Serveur muet
En fait, le problème est déjà corrigé en squeeze (la debian testing). Le nouveau package présente aussi d'autres intérêts, comme de signaler que la machine a des disques dont le cache en écriture est activé.
Si tu as d'autres bugs à signaler, je pense que le projet Debian et le mainteneur seront très intéressés.
Marc.
Hors ligne
Pages : 1