Skip site navigation (1) Skip section navigation (2)

Re: [pgsql-fr-generale] travailler sur D sans sollicité C

From: Guillaume Lelarge <guillaume(at)lelarge(dot)info>
To: Eric Christ <eric(dot)christ(at)setri(dot)com>
Cc: pgsql-fr-generale(at)postgresql(dot)org
Subject: Re: [pgsql-fr-generale] travailler sur D sans sollicité C
Date: 2008-11-10 10:30:56
Message-ID: 49180D60.30101@lelarge.info (view raw or flat)
Thread:
Lists: pgsql-fr-generale
Bonjour,

Eric Christ a écrit :
> je suis novice en postgresql et j'ai un problème.
> je galère depuis 2 j pour le résoudre
> je tente désespérément de configurée postgresql pour qu'il ne travaille
> que sur D. Que se soit pour sauvegarder toutes mes données ou pour les
> fichiers temporaires
>  
> Voici ou j'en suis
> J'ai créer un tablespace
> 
>     CREATE TABLESPACE "EDF_SCAV_TS"
>       OWNER postgres
>       LOCATION 'D:/EDF_SCAV/DATA_BASE/DATA';
> 
> Ma base est
> 
>     CREATE DATABASE "EDF_SCAV"
>       WITH OWNER = postgres
>            ENCODING = 'WIN1252'
>            TABLESPACE = "EDF_SCAV_TS";
>      
> 
> et typiquement une table de cette base (j'ai gardé le schéma par défaut
> : "public") est
>  
> 
>     -- Table: "PARAMETRES"
>     -- DROP TABLE "PARAMETRES";
>      
>     CREATE TABLE "PARAMETRES"
>     (
>       "ID" serial NOT NULL,
>       "NOM" text NOT NULL,
>       "VALEUR" text,
>       "SYNC" integer DEFAULT 0,
>       dt timestamp with time zone,
>       CONSTRAINT "PARAMETRES_PK" PRIMARY KEY ("ID", "NOM") USING INDEX
>     TABLESPACE "EDF_SCAV_TS"
>     )
>     WITH (OIDS=FALSE)
>     TABLESPACE "EDF_SCAV_TS";
>     ALTER TABLE "PARAMETRES" OWNER TO postgres;
> 
> Dans cette configuration, les données sont bien sauvegardée sur "D" mais
> elles sont dupliquée dans "C:\Program Files\PostgreSQL\8.3\data\pg_tblspc"
> CE qui finis par planter mon PC car C n'a pas la même taille que D
>  

Elles ne sont pas dupliquées, il s'agit de liens symboliques vers les
fichiers du tablespace.

Quel message d'erreur avez-vous ?

> J'ai continuer par tester d'autre option
> j'ai mis :
> default_tablespace = D:/EDF_SCAV/DATA_BASE/DATA

Ça sert uniquement pour les prochains objets créés.

> temp_tablespace = D:/EDF_SCAV/DATA_BASE/DATA

Ça ne sert que pour les objets temporaires, ce qui ne semble pas votre cas.

> pas de changement
>  
> j'ai essayé :
> default_tablespace = D:\EDF_SCAV\DATA_BASE\DATA
> temp_tablespace = D:\EDF_SCAV\DATA_BASE\DATA
> pas de changement
>  
> de plus dans le catalogue "pg_tablespace"
> j'ai mis toutes les colonnes "spclocation" à D:/EDF_SCAV/DATA_BASE/DATA
> pas de changement
>  

Oula, il ne faut *jamais* faire cela.

> Quelqu'un pourrait-il m'indiquer une procédure détaillé pour :
> - a partir de postgresql installé sur c dans ses dossiers par défaut
> - d'un pc ayant une partition c de 10go est un d de 200go
> - utiliser une base de donnée dans un sous dossier de D (ex:D:\toto\db)
> sans que postgres ne génère aucun fichier sur C, que ce soit des
> temporaires ou autre
>  

Le dernier point est impossible. PostgreSQL crée toujours des fichiers
dans son répertoire de base. Un moyen peut-être plus simple dans votre
cas serait d'installer directement PostgreSQL dans D: ?

> Nota : je penses qu'il s'agit des index qui prenne beaucoup de place
> mais je n'en suis pas certain ?
>  

De toute façon, vous avez créé la base de données sur le tablespace qui
pointe vers D:\..., donc cela ne doit pas poser de problème pour les
index des tables de cette base de données.

> PS : pour les chemins, faut-il saisir "D:\DATE" ou "D:/DATA" ?
>  

Peu importe.


-- 
Guillaume.
 http://www.postgresqlfr.org
 http://dalibo.com

In response to

pgsql-fr-generale by date

Next:From: Guillaume LelargeDate: 2008-11-10 10:33:23
Subject: Re: [pgsql-fr-generale] Re: [pgsql-fr-generale] travailler sur D sans sollicité C
Previous:From: François FigarolaDate: 2008-11-10 10:18:24
Subject: Re: [pgsql-fr-generale] travailler sur D sans sollicité C

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group