CREATE TABLESPACE

Nom

CREATE TABLESPACE -- définit un nouveau tablespace

Synopsis

CREATE TABLESPACE nomespacelogique
[ OWNER nom_utilisateur ]
LOCATION 'répertoire'

Description

CREATE TABLESPACE enregistre un nouveau tablespace pour le groupe de bases de données. Le nom du tablespace doit être distinct du nom de tout autre tablespace du groupe.

Un tablespace permet aux superutilisateurs de définir un autre emplacement sur le système de fichiers où les fichiers de données contenant des objets de la base de données (comme les tables et les index) pourront résider.

Un utilisateur disposant des droits appropriés peut passer nomespacelogique à 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 d'un tablespace à créer. Le nom ne peut pas commencer avec pg_ car 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 donner la propriété des tablespaces à des utilisateurs standards.

répertoire

Le répertoire qui sera utilisé pour le tablespace. Le répertoire doit être vide et doit être possédé par l'utilisateur système PostgreSQL. Le répertoire doit être spécifié par un chemin absolu.

Notes

Les tablespaces sont seulement supportés sur les systèmes supportant les liens symboliques.

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 donner le propriété à l'utilisatrice genevieve :

CREATE TABLESPACE espace_index OWNER genevieve LOCATION '/data/indexes';

Compatibilité

CREATE TABLESPACE est une extension PostgreSQL.

Voir aussi

CREATE DATABASE, CREATE TABLE, CREATE INDEX, DROP TABLESPACE, ALTER TABLESPACE