Bonjour
je suis sur windows Xp
j'ai insatlé postgres 8.2 sur la partition C
ce que je veux faire c'est déplacer le dossier data vers une autre partition par example D
quelq'un pourrait m'aider MERCI
Bonjour
je suis sur windows Xp
j'ai insatlé postgres 8.2 sur la partition C
ce que je veux faire c'est déplacer le dossier data vers une autre partition par example D
quelq'un pourrait m'aider MERCI
En principe, la méthode suivante devrait convenir:
- arrêter le service postgresql
- éditer le fichier postgresql.conf et changer l'entrée data_directory
- déplacer le répertoire en question vers son nouvel emplacement
- relancer le service postgresql
bonjour
postgres est installée sur le C:\PostgreSQL\8.2\
jai arreté le service postgres puis
j'ai editer le fichier postgresql.conf se trouvant dans C:\PostgreSQL\8.2\data et je l'ai modifier comme suit :
data_directory = 'D:\postgres\data' # use data in another directory
#hba_file = 'ConfigDir/pg_hba.conf'
#ident_file = 'ConfigDir/pg_ident.conf'
et j'ai créer un dossier D:\postgres\data contenant le contenu du dossier origine se troiuvant sur le C:\
quand j erédemare le serveur il y a une message d'erreur comme suit "Le service PostgreSQL Database 8.2 sur Ordinateur local à démaré puis s'est arreté Certains services peuvent s'aareter automatiquement s'ils ont aucune tache à effectuer par exmple le service des alertes et les journaux de perfermances"
quelqu'un à une ideé Svp
C'est normal, le service postgres est défini dans la base de registre comme se lançant dans c:\program files"
- aller dans le regedit HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\pgsql-8.2
et modifier la chaine ImagePath
"C:\Program Files\PostgreSQL\8.2\bin\pg_ctl.exe" runservice -D "C:\Program Files\PostgreSQL\8.2\data\"
en
"C:\Program Files\PostgreSQL\8.2\bin\pg_ctl.exe" runservice -D "D:\Postgres\DATA\"
- dans HKEY_LOCAL_MACHINE\SOFTWARE\PostgreSQL\Services\pgsql-8.2
modifier la chaine Data Directory
- dans HKEY_LOCAL_MACHINE\SOFTWARE\PostgreSQL\Installations\{un GUID}
modifier la chaine Data Directory
PS: Dommage d'utiliser le 8.2 alors que le 8.4 est sorti depuis juin
Mon Tutoriel sur la programmation «Python»
Mon Tutoriel sur la programmation «Shell»
Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
Et on poste ses codes entre balises [code] et [/code]
J'ai pris le temps de faire un test sous Vista et postgresql-8.4
Si je mets data_directory='d:\pgdata', il s'avère qu'au redémarrage du service, ça échoue effectivement et je vois l'erreur suivante dans le journal des applications:
le répertoire des données « C:/Windows/system32/d:pgdata » n'existe pas
Manifestement l'antislash dans le chemin pose problème et il prend la valeur comme un chemin relatif.
Si en revanche je mets data_directory='d:\\pgdata', en doublant les antislashs donc, là ça démarre bien.
Il y a aussi une autre subtilité: comme par défaut les fichiers de config (ceux dont les noms se finissent par .conf) se trouvent au même endroit que data_directory (via la valeur par défaut de ConfigDir), il faut quand même garder les fichiers de config à l'ancien endroit puisque le service va les chercher là. Mais tout le reste, c.a.d les vraies données, peut être déplacé au nouvel emplacement.
Ou alors utiliser la méthode de Sve@r sur la base de registre pour changer les paramètres de lancement du service Windows pour qu'il trouve les fichiers de config au nouvel endroit.
Personnellement je préfère séparer les données des fichiers de config, comme le fait debian par exemple, mais à chaque utilisateur ses propres choix
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager