PostgreSQL : déplacer le répertoire de données

Dans ce billet nous allons voir comment déplacer simplement le répertoire contenant les données de PostgreSQL dans un autre répertoire se situant éventuellement sur une autre partition.

Premièrement, pourquoi vouloir faire une chose pareille ?!? Le cas de figure est classique, on installe PostgreSQL sur une partition système, on travaille avec pendant un certain temps, la taille des données augmente et un jour on se retrouve avec une partition système full à cause des bases de données PostgreSQL !

Cette technique permet donc de déplacer l’ensemble des données dans un autre dossier, elle a été testée avec PostgreSQL 8.1 sur une suse (mais il y n’y a pas de raison que cela ne fonctionne pas sur une distribution plus classique).

  1. Stopper le serveur PostgreSQL : /etc/init.d/postgresql stop
  2. Copier les données dans le nouveau répertoire : cp -R /var/lib/pgsql/data /nouveau_repertoire/pgsql/
  3. Faire une backup des données actuelles : mv /var/lib/pgsql/data /var/lib/pgsql/data.old
  4. Créer un lien symbolique vers le nouveau répertoire : ln -s /nouveau_repertoire/pgsql/ /var/lib/pgsql/data
  5. Donner les droits de propriété a PostgreSQL (très important, aussi, utilisez le nom exact de votre utilisateur PostgreSQL) : chown -R postgres:postgres /nouveau_repertoire/pgsql/
  6. Relancer PostgreSQL et normalement le tour et joué !  /etc/init.d/postgresql start

Si jamais ce n’est pas le cas, vous disposez d’une backup dans data.old, stopper le serveur, supprimez alors le lien symbolique et renommez data.old en data, relancez le serveur et tentez une autre approche !

PostgreSQL

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Nos partenaires

PrestaShop

PrestaShop nous fait confiance en nous délivrant la certification Expert qui démontre notre expertise concernant leur logiciel e-commerce. Nous avons également obtenu deux certifications officielles PrestaShop Fullstack Developer.

PayPlug

PayPlug est la solution de paiement française qui simplifie le paiement pour l’ensemble des TPE et PME de l'e-commerce, aussi bien en ligne qu’en magasin.

Klaviyo

Klaviyo, leader mondial du marketing automation, propose une solution complète qui s'interface avec vos canaux de vente.