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 |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
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
From | Date | Subject | |
---|---|---|---|
Next Message | Guillaume Lelarge | 2008-11-10 10:33:23 | Re: [pgsql-fr-generale] Re: [pgsql-fr-generale] travailler sur D sans sollicité C |
Previous Message | François Figarola | 2008-11-10 10:18:24 | Re: [pgsql-fr-generale] travailler sur D sans sollicité C |