CREATE TABLESPACE
CREATE TABLESPACE — Définir un nouvel tablespace
Synopsis
CREATE TABLESPACE nomespacelogique
[ OWNER nom_utilisateur ]
LOCATION 'répertoire'
Description
CREATE TABLESPACE
enregistre un nouveau tablespace pour la grappe de bases de
données. Le nom du tablespace doit être distinct du nom de tout
autre tablespace de la grappe.
Un tablespace permet aux superutilisateurs de définir un nouvel
emplacement sur le système de fichiers pour le stockage des
fichiers de données contenant des objets de la base (comme les
tables et les index).
Un utilisateur disposant des droits appropriés peut passer
nomespacelogique
comme
paramètre de
CREATE
DATABASE
,
CREATE
TABLE
,
CREATE
INDEX
ou
ADD
CONSTRAINT
pour que les fichiers de données de ces
objets soient stockés à l'intérieur du tablespace spécifié.
Paramètres
-
nomespacelogique
-
Le nom du tablespace à créer. Le nom ne peut pas commencer
par pg_, de tels noms sont réservés
pour les tablespaces système.
-
nomutilisateur
-
Le nom de l'utilisateur, propriétaire du tablespace. En
cas d'omission, il s'agit de l'utilisateur ayant exécuté la
commande. Seuls les superutilisateurs peuvent créer des
tablespaces mais ils peuvent en donner la propriété à des
utilisateurs standard.
-
répertoire
-
Le répertoire qui sera utilisé pour le tablespace. Le
répertoire doit être vide et doit appartenir à l'utilisateur
système PostgreSQL™.
Le répertoire doit être spécifié par un chemin absolu.
Notes
Les tablespaces ne sont supportés que sur les systèmes gérant les
liens symboliques.
CREATE TABLESPACE
ne
peut pas être exécuté à l'intérieur d'un bloc de transactions.
Exemples
Créer un tablespace espace_base sur
/data/dbs :
CREATE TABLESPACE espace_base LOCATION '/data/dbs';
Créer un tablespace espace_index sur
/data/indexes et en donner la propriété à
l'utilisatrice genevieve :
CREATE TABLESPACE espace_index OWNER genevieve LOCATION '/data/indexes';
Compatibilité
CREATE TABLESPACE
est
une extension PostgreSQL™.