Bonjour à tous,
Je suis nouveau sur le forum et j'ai un problème qui me bloque déja depuis 2 jours, en espérant que la communauté pourra me venir en aide.
Alors j'ai postgresql V 8.3.7 installé sur deux machines HP-UX et depuis déjà un an j'ai une base de données qui tourne bien dessus. j'ai fait un script d'évolution de ma base(création de 32 nouveaux champs dans une des tables et leur initialisation à des valeurs par défaut). cette table contient envriron 2000*65 lignes de données. je fais mes DEV sur un environnement windows sur le quel le script(durée exécution environ 30min) est passé sans problème et j'ai bien mes nouveaux champs, données et accès à la base sans soucis. Quand j'essaye de passer le même script sur mon environnement d'intégration qui lui est sur un machine HP-UX, postgresql crashe au bout d'un moment et une fois crashé, le simple fait de taper la commande psql me renvoie :
sur la même machine, j'ai un 2e utilisateur postgres configuré sur le port 5433, quand je me connecte avec cet utilisateur et que je tape psql, je n'ai aucune erreur et j'arrive à accéder à la base de données configurée pour cet utilisateurpsql: could not connect to server: Fichier ou répertoire inexistant
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.5435"?
Les 2 utilisateurs sont configurés pour des projets différents. j'ai essayé de regarder dans PGDATA pour chacun d'entre eux, dans le cas du 1er utilisateur il manque le fichier postmaster.pid et quand je regarde ds /tmp .s.PGSQL.5435 n'existe pas tandis que .s.PGSQL.5433 existe bien. A noter que ces 2 fichiers existaient bien avant le crash pour l'utilisateur 1
Quand je fais pg_ctl status avec l'utilisateur 1, => pg_ctl: no server running
Quand je fais pg_ctl status avec l'utilisateur 2, =>pg_ctl: server is running (PID: 2511)
/opt/iexpress/postgresql/bin/postgres
j'ai essayé un pg_ctl start avec l'utilisateur 1, => server starting mais dès que je refais pg_ctl status => no server running
Je suis allé regarder dans les logs postgres j'ai ça :
j'ai fait un bdf, je me suis rendu compte que j'avais un file system qui etait saturé à 100%, je l'ai vidé. le problème c'est que depuis le crash je n'arrive plus à relancer postgres avec l'utilisateur 1 donc très embêté pour tester à nouveau.HINT: Consider increasing the configuration parameter "checkpoint_segments".
LOG: duration: 22794.768 ms statement: ALTER TABLE Nomtable ADD COLUMN Nom_Colonne_15 INTEGER DEFAULT '65', ADD CONSTRAINT
Nomtable_fkey FOREIGN KEY (nomChamp)^M
REFERENCES Nomtable (id) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION ;
LOG: checkpoints are occurring too frequently (15 seconds apart)
HINT: Consider increasing the configuration parameter "checkpoint_segments".
cp : copie erronée dans /nomrepertoire/archives/00000001000000080000009E : write: Plus d'espace dans le périphérique
LOG: archive command failed with exit code 1
DETAIL: The failed archive command was: cp pg_xlog/00000001000000080000009E /nomrepertoire/archives/00000001000000080000009E
cp : impossible de créer /nomrepertoire/archives/00000001000000080000009E : Autorisation refusée
LOG: archive command failed with exit code 1
LOG: database system was shut down at 2013-06-25 17:11:19 METDST
LOG: could not open file "pg_xlog/0000000100000008000000D8" (log file 8, segment 216): Fichier ou répertoire inexistant
LOG: invalid primary checkpoint record
LOG: could not open file "pg_xlog/0000000100000008000000D7" (log file 8, segment 215): Fichier ou répertoire inexistant
LOG: invalid secondary checkpoint record
PANIC: could not locate a valid checkpoint record
LOG: startup process (PID 19136) was terminated by signal 6
LOG: aborting startup due to startup process failure
A noter que le script de modification de la base a été lancée sur les 2 machines HP-UX et j'ai rencontré le même problème.
Dans l'attente de votre aide, je me tiens à votre disposition en vous remerciant d'avance.
Partager