Vous n'êtes pas identifié(e).
Pages : 1
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
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
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
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
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
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
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
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
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
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
gleu : intéressante discussion. Quel(s) bug(s) rencontres tu ?
Marc.
Hors ligne
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
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
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