Re: Deplacer un tablespace 9,1

From: damien clochard <damien(at)dalibo(dot)info>
To: Stephane Parenton <stephane(dot)parenton(at)arturia(dot)com>
Cc: pgsql-fr-generale(at)postgresql(dot)org
Subject: Re: Deplacer un tablespace 9,1
Date: 2013-04-10 15:10:50
Message-ID: 516580FA.9080804@dalibo.info
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-fr-generale

Le 10/04/2013 16:32, Stephane Parenton a écrit :
> Bonjour,
>
> J'ai un tablespace créé sur un pgsql 9.1 sous linux. Il a été créé sur
> une machine destinée au web avec un /var "petit" et un /home démesuré.
> Je voudrais déplacer ce tablespace de /var à /home/monrepertoire.
>
> Pour cela, j'ai créé un dossier sous /home avec les droits et user
> similaires à ceux du /var, et j'ai, semble-t-il, deux options :
>
> soit copier ce que j'ai dans mon /var/lib/postresql... dans le
> /home/monrepertoire, renommer le repertoire de /var et faire un ln -s du
> nom initial vers /home/monrepertoire

oublier pas d'arrêter le serveur quand même :)

> soit faire un alter tablespace...
>

Vous ne pouvez pas changer l'emplacement ("location") d'un tablespace
avec la commande ALTER TABLESPACE.

Ce que vous pouvez faire c'est créer un nouveau tablespace pointant le
nouvel emplacement, puis déplacer les objets un par un avec la commande

ALTER TABLE ... SET TABLESPACE ...
ALTER INDEX ... SET TABLESPACE ...

ou carrément :

ALTER DATABASE ... SET TABLESPACE ...

De mémoire, c'est notre Guillaume Lelarge national qui a codé ça :)

Si vous optez pour cette solution, ça transactionnel (vous pouvez faire
un rollback en cas de problème) mais ça serait aussi un peu plus lent
que de déplacer les fichiers à la main.

La question fondamentale c'est : "Est-ce que vous devez impérativement
le faire à chaud ou est-ce que vous pouvez arrêter le serveur ?"

In response to

Responses

Browse pgsql-fr-generale by date

  From Date Subject
Next Message Stephane Parenton 2013-04-10 15:24:31 Re: Deplacer un tablespace 9,1
Previous Message Stephane Parenton 2013-04-10 14:32:39 Deplacer un tablespace 9,1