Vous n'êtes pas identifié(e).
Bonjour,
Le disque sur lequel j'ai installé PostgreSQL est presque complet, je dois donc changer l'emplacement du dossier contenant les données sur un autre disque de la machine.
En gros les données sont présents sur l'emplacement suivant : C:\Program Files\PostgreSQL\9.2\data
Et je souhaiterais les déplacer vers : E:\postgresql\data
En allant dans le répertoire /data pour voir où les données étaient stockées j'ai remarqué que les données semblent être dans le dossier /base.
1. Existe-t-il un moyen conventionnel et simple de juste déplacer le dossier /base... ou faut-til déplacer tout le dossier /data ?
2. Faut-t-il toucher aux registres Windows pour modifier l'emplacement du répertoire contenant les données ? Comment faire lorsqu'on est sous Windows pour déplacer ses fichiers de données ?
PS:
J'ai bien sûr effectué des recherches dans la documentation avant de poster ce sujet :
http://www.postgresql.org/docs/9.2/stat … tions.html
http://docs.postgresqlfr.org/9.2/runtim … tions.html
=> Je crois comprendre qu'il faut modifier le paramètre data_directory du fichier postgresql.conf
Ainsi que sur les forums (qui m'a l'air bien expliqué ici, mais c'est pour PostgreSQL 8.1 et aucune modification n'est effectuée au niveau du postgresql.conf) :
http://www.developpez.net/forums/d22495 … ment-data/
=> J'ai peur de mal faire la chose ou faire "trop compliqué", s'il existe un moyen plus simple je suis preneur.
Infos:
OS : Windows Server
Version de PostgreSQL : 9.2
Je vous remercie par avance, cordialement,
Hors ligne
2 solutions :
* Utiliser des tablespaces. http://docs.postgresql.fr/9.3/manage-ag … paces.html
* Déplacer un répertoire. Le plus simple est généralement de créer une jonction (http://www.zebulon.fr/astuces/230-creer … ndows.html). Il est aussi possible de modifier la définition du service Windows quand on déplace le répertoire data complet (http://www.dalibo.org/installation_de_p … tgresql-84).
Guillaume.
Hors ligne
Bonjour,
Je m'apprête à devoir faire la même chose (déplacer le dossier "C:\Program Files\PostgreSQL\9.3\data" de mon systeme sur un autre lecteur).
Cette question a été posée en 2014, et nous n'avons pas eu de retour de guk92 après :
- est-ce que tout s'est bien passé ?
- laquelle des 2 méthodes proposée par gleu as-tu utilisée ?
- as-tu des points de vigilances particuliers ?
Merci pour vos retours et conseils
(j'ai encore un peu de place sur C:\, donc je ne suis pas très pressé )
Sylvain M.
Hors ligne
Bonjour,
puisque tu n'es pas pressé ( ) et que je me suis aussi posé la question, voici comment j'ai procédé sous Windows10:
1: arrêter le serveur postgresql
2: faire une copie du dossier "C:\Program Files\PostgreSQL\12\data" à l'endroit désiré, par ex en "C:\PostgreSQL_data\", puis renommer l'original en autre chose (data_old par ex), ou carément déplacer le dossier en "C:\Program Files\PostgreSQL\12\data" à l'endroit désiré, par ex en "C:\PostgreSQL_data\" ( )
3: ouvrir une fenêtre PowerShell en mode administrateur et se placer dans le dossier "C:\Program Files\PostgreSQL\12"
4: exécuter la commande New-Item comme suit:
New-Item -ItemType SymbolicLink -Path .\data -Target C:\PostgreSQL_data\data
cela crée un lien symbolique 'data' pointant sur le dossier data déplacé dans le dossier "C:\Program Files\PostgreSQL\12"
5: relancer le serveur
Hors ligne