Vous n'êtes pas identifié(e).
Bonjour,
Je rencontre un problème dans l'installation de postgresql 8.4.1.
Configuration :
- postgresql-8.4.1.exe
- windows XP
- Installation sous C:
- data sous un autre disque.
1. je me connecte avec mon compte admin local pour lancer l'install.
2. je lance l'install et le compte superuser se créé bien
3. l'installation sous C: se passe bien
4. lors de la création du répertoire data et des fichiers de conf, un message d'erreur survient lorsqu'il tente de lancer le serveur.
5. le service est bien déclaré auprès de windows
6. le répertoire censé accueillir "data" est vide.
Le fichier de log de l'install n'indique rien de spécial (au premier coup d'oeil)
Question :
- Pour quelle raison qui m'échappe, le répertoire data ne peut être créé ?
- Y-a-t-il une histoire de droits avec le compte lançant l'install ?
Merci pour vos réponses.
Trace de l'install :
http://piratepad.net/48vqTOKo1t
Dernière modification par griffes_def (25/10/2011 10:30:11)
Hors ligne
Bonjour.
A première vue, il semblerait que l'initdb n'a pas pu se lancer car le répertoire d:\PostgresData existait déjà ou n'était pas vide.
correction des droits sur le r‚pertoire existant D:/PostgresData... ok
cr‚ation des sous-r‚pertoires... initdb : n'a pas pu cr‚er le r‚pertoire ® D:/PostgresData ¯ : File exists
Julien.
https://rjuju.github.io/
En ligne
Ok, je tente en ne créant pas le répertoire à l'avance.
NB : Par contre j'avais également tenté en laissant le répertoire par défaut sous C:\Pg\8.4\data et cela à fait la même chose.
Hors ligne
Re...
Merci pour la réactivité.
J'ai laissé l'installeur créé le répertoire, ce qu'il a fait mais il reste vide et voici la trace :
_________________________________________________
[...]
Ensuring we can write to the data directory (using cacls):
r'pertoire trait'˜: D:\pg_data
Les fichiers de ce cluster appartiendront … l'utilisateur ® fb ¯.
Le processus serveur doit ‚galement lui appartenir.
Le cluster sera initialis‚ avec la locale French_France.1252.
La configuration de la recherche plein texte a ‚t‚ initialis‚e … ® french ¯.
correction des droits sur le r‚pertoire existant D:/pg_data... ok
cr‚ation des sous-r‚pertoires... initdb : n'a pas pu cr‚er le r‚pertoire ® D:/pg_data ¯ : File exists
initdb : suppression du contenu du r‚pertoire des donn‚es ® D:/pg_data ¯
Granting service account access to the data directory (using cacls):
r'pertoire trait'˜: D:\pg_data
initcluster.vbs ran to completion
____________________________________________________
Autres messages durant l'installation :
Message suite à l'action d'unpack :
-> Error while writing C:\Documents and settings\[...]\Documentation\Installation notes.url
Message de fin d'install :
-> Problem running post-install step. Installation may not complete correctly Error reading file D:/pg_data/postgresql.conf
______________________________________________________
Une idée ?
Merci par avance.
Hors ligne
Vous pouvez toujours essayer de lancer l'initdb à la main.
Il faut créer le répertoire data si vous l'avez supprimé, mettre l'utilisateur postgres avec les droits d'écriture, peut-être tous les droits, et lancer l'initdb en tant que votre utilisateur postgres.
initdb.exe -D "D:\pg_data"
Julien.
https://rjuju.github.io/
En ligne
J'ai opté pour le changement d'installeur : postgresql-8.4.9 pour voir.
Effectivement il a pu me créer mon répertoire data sur un autre disque et faire l'installation.
Par contre lors du lancement l'observateur d'evt m'indique que le répertoire data n'existe pas.
Pourtant la ligne de commande de lancement du service est correcte. L'option -D pointe bien sur le répertoire data créé durant l'installation.
Le listen_address est à '*'.
Une idée ?
Merci par avance.
Hors ligne
Sans plus d'information c'est dur de répondre.
Pouvez-vous faire un copier-coller de la ligne de commande du service, de l'erreur de l'observateur d’évènements ainsi que des fichiers présents à la racine et des répertoires dans le répertoire data ?
Julien.
https://rjuju.github.io/
En ligne
Voici la ligne de commande:
C:/Program Files/PostgreSQL/8.4/bin/pg_ctl.exe runservice -N "postgresql-8.4" -D "D:/data_pg_84" -w
Les répertoires à l'intérieur de D:/data_pg_84:
\base
\global
\pg_clog
\pg_multixact
\pg_stat_temp
\pg_subtrans
\pg_tblspc
\pg_twophase
\pg_xlog
pg_hba.conf
pg_ident.conf
PG_VERSION
postgresql.conf
Journal des évènements :
2011-10-25 10:02:32 GMT FATAL: le répertoire des données « D:/data_pg_84 » n'existe pas
Merci par avance.
Hors ligne
D:\data_pg_84 ?
Stéphane Schildknecht
Conseil, formations et support PostgreSQL
http://www.loxodata.com
Hors ligne
Oui il s'agit du répertoire où sont stockées les données sur le disque D.
Cela pose un problème ?
Merci par avance.
Hors ligne
Je crois que SAS proposait de remplacer le / par un \, mais ça ne pose pas de soucis normalement.
Sinon le disque D est-il un disque physique ? Et est-il accessible par l'utilisateur lançant le service postgresql ?
A priori il n'y a pas de raison que le service ne se lance pas. L'erreur se reproduit toujours si vous relancez le service ?
Julien.
https://rjuju.github.io/
En ligne
Oui effectivement je me suis posé la question entre "/" et "\" j'ai testé les deux mais sans succès.
Le disque D est un disque physique.
Le processus pg_ctl se lance bien mais bloque au moment de linker vers le répertoire data.
Mais même résultat au lancement.
Je n'en suis pas à ma première install de postgres sous windows, mais là je ne vois pas d'où proviens le soucis.
Hors ligne
Rectification après vérification : le disque D est une partition.
Cela peut-il poser problème ?
Hors ligne
A priori non, sauf si la partition n'est pas visible pour l'utilisateur postgres.
Pouvez-vous ouvrir une session sur le serveur en tant que postgres et vérifier que le disque D et le répertoire data_pg_84 sont bien présent ?
Julien.
https://rjuju.github.io/
En ligne
Effectivement le problème venait de la visibilité de l'utilisateur postgres sur la partition.
J'ai opté pour le stockage sur un disque physique ajouté à la machine.
Maintenant cela fonctionne.
En tout cas, merci pour votre réactivité.
A bientôt.
Fab
Hors ligne