PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 08/04/2009 10:48:39

dragondark
Membre

probleme avec l'initdb

j'ai eu cette erreur

could not change directory to "/root"
initdb: file "/home/postgres/data/postgres.bki" does not exist
This might mean you have a corrupted installation or identified
the wrong directory with the invocation option -L

donc j'ai pris le dossier data que j'avais dans

/postgresql/postgresql-8.3.7/src/test/regress/tmp_check/install/home/postgres/data

sauf que maintenant j'ai une erreur du type  :

The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.

The database cluster will be initialized with locale C.
The default text search configuration will be set to "english".

creating directory /usr/local/pgsql/data ... ok
creating subdirectories ... ok
selecting default max_connections ... 10
selecting default shared_buffers/max_fsm_pages ... 400kB/20000
creating configuration files ... ok
creating template1 database in /usr/local/pgsql/data/base/1 ... FATAL:  invalid value for parameter "timezone_abbreviations": "Default"
child process exited with exit code 1
initdb: removing data directory "/usr/local/pgsql/data"

donc je en sais aps si vous avez une solution a me proposer :c

cordialement
dragondark

ps : tout vien de cette erreur
* Starting PostgreSQL ...
FATAL:  database files are incompatible with server
DETAIL:  The data directory was initialized by PostgreSQL version 8.0, which is not compatible with this version 8.3.7.

Dernière modification par dragondark (08/04/2009 11:10:23)

Hors ligne

#2 08/04/2009 11:28:30

gleu
Administrateur

Re : probleme avec l'initdb

Oulaaaa, attention, qu'avez-vous installé au départ ?

Ce que dit le dernier message, c'est que vous essayez d'exécuter un PostgreSQL 8.3.7 sur un répertoire PostgreSQL de version 8.0. Or, ce n'est pas compatible entre versions stables.

Bref, qu'avez-vous fait entre le moment où ça fonctionnait et le moment où vous avez eu le message d'incompatibilité ?


Guillaume.

Hors ligne

#3 08/04/2009 12:01:28

dragondark
Membre

Re : probleme avec l'initdb

alors en faite je vien de trouver mon probleme qui m'en donne un autre
j'ai reinstaller la version de postgres avec ces option

/configure --prefix=/usr --includedir=/usr/include/postgresql/pgsql --datadir=/home/postgres/data --sysconfdir=/etc/postgresql --mandir=/usr/share/man --host=x86_64-pc-linux-gnu --with-docdir=/usr/share/doc/postgresql-8.3.7/ --libdir=/usr/lib/ --enable-depend --enable-nls=all --with-perl --with-python --with-tcl --with-openssl --with-libxml --with-libxslt --enable-thread-safety

mais apparament

--datadir=/home/postgres/data

ne crée pas le dossier pour la base de donnée mais le dossier de configuration, ce qui m'implique un certain soucis etant donnée que maintenant mon dossier de configuration se trouve a la place de ma base de données

je l'ai donc reinstaller respectant cette option et creant ma nouvelle base dans data2/
et j'ai lancer le serveur qui se lance parfaitement

donc je pense qu'il me suffis de faire :

gmake uninstall
gmake clean
gmake cleandir

/configure --prefix=/usr --includedir=/usr/include/postgresql/pgsql --datadir=/usr/pgsql/data --sysconfdir=/etc/postgresql --mandir=/usr/share/man --host=x86_64-pc-linux-gnu --with-docdir=/usr/share/doc/postgresql-8.3.7/ --libdir=/usr/lib/ --enable-depend --enable-nls=all --with-perl --with-python --with-tcl --with-openssl --with-libxml --with-libxslt --enable-thread-safety

gmake
gmake install

initdb -D /home/postgres/data

non?



pour expliquer, j'ai du installer la version 8.0.15 car etant sous gentoo, c'est la seul version disponible
et dessus j'ai mis en place la version 8.3.7 manuelement

pour pouvoir enfaite renplacer toute les fichier executable du 8.0.15, et garder une hierarchie de gentoo
(j'ai repris l'ebuild du 8.0.15 pour l'install du 8.3.7)

c'est histoire de faire quelque chose de propres.
vis a vis des mis a jour et ... je ne sais plus quoi :s




par contre cette facon de faire engage que j'ai un soucis apres avec la coordination entre apache et ma base de donnée
car il fais appel a l'ancienne version,
je sais pas si vous avez une solution vis a vis de cette situation
car j'ai aussi remarquer que pour lancer le serveur il faut faire une ligne de commande et qu'on pouvais pas par /etc/init.d/postgres-8.3.7 start (qui apparament mene a rien)
faire un scritp faisant lancer le serveur/ le stoper et tout, c'est relativement simple (en y metant aussi deux ligne de commande et une syntaxe pour prendre en compte les argument)
mais cela fais que je n'aurais plus de fichier de lancement habituel.

donc si vous avez une alternative en tete je suis preneur

cordialement
dragondark

Hors ligne

#4 08/04/2009 15:59:33

gleu
Administrateur

Re : probleme avec l'initdb

--datadir, comme le dit la documentation, est le répertoire des données indépendante de l'architecture, mais données de l'installation.

Concernant la commande configure, je ne l'ai jamais utilisé avec autant d'options. Mais pour autant, ça ne me paraît pas erroné.

Je ne connais pas bien gentoo, donc je ne saurais pas dire si c'est vraiment propre.

Apache et PHP se servent de la bibliothèque libpq, Donc, à priori, peu leur importe la version du serveur que vous installez.


Guillaume.

Hors ligne

#5 08/04/2009 16:23:09

dragondark
Membre

Re : probleme avec l'initdb

merci smile

pour ce qu'il en ai j'ai trouver la solution j'ai redefini mon /etc/init.d/postgresql-8.3.7 pour le mettre a jour en fonction de mes option de configure
puis je l'ai remplacer par /etc/init.d/postgresql

comme cela apache appel la fonction
/etc/init.d/postgres
et donc execute postgresql 8.3.7 en bonne version, et correctement

j'ai tout relance et ca marche a nikel wink
merci
bonne soirée

Hors ligne

Pied de page des forums