PostgreSQL 8.0.0 文書
前のページ | 巻戻し |  | 早送り | 次のページ

# CREATE TABLESPACE

## 名前

CREATE TABLESPACE -- 新しいテーブル空間の定義

## 概要

    CREATE TABLESPACE tablespacename [ OWNER username ] LOCATION 'directory'

## 説明

`CREATE TABLESPACE`はクラスタ全体で使用できるテーブル空間を新規に登録します。 このテーブル空間名はデータベースクラスタ内の既存のテーブル空間の名前と異なるものでなければなりません。

テーブル空間によって、スーパーユーザはデータベースオブジェクト(テーブルやインデックスなど)を構成するデータファイルを格納するファイルシステム上の場所を別途定義することができます。

適切な権限を持つユーザは、`CREATE DATABASE`や`CREATE TABLE`、`CREATE INDEX`、`ADD CONSTRAINT`コマンドに`tablespacename`を渡すことで、指定したテーブル空間にこれらのオブジェクトを格納させることができます。

## パラメータ

`tablespacename`

  作成するテーブル空間の名前です。 システム向けのテーブル空間用に予約されていますので、この名前を`pg_`から始めることはできません。

`username`

  テーブル空間を所有するユーザの名前です。 省略時はデフォルトでコマンドを実行したユーザとなります。 スーパーユーザのみがテーブル空間を作成することができますが、テーブル空間の所有権を非スーパーユーザに割り当てることは可能です。

`directory`

  テーブル空間用に使用するディレクトリです。 このディレクトリは空でなければならず、また、PostgreSQLシステムユーザが所有していなければなりません。 このディレクトリは絶対パス名で指定する必要があります。

## 注釈

シンボリックリンクをサポートしているシステムのみ、テーブル空間をサポートします。

## 例

`/data/dbs`に`dbspace`テーブル空間を作成します。

    CREATE TABLESPACE dbspace LOCATION '/data/dbs';

`/data/indexes`に、`genevieve`ユーザが所有する`indexspace`テーブル空間を作成します。

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

## 互換性

`CREATE TABLESPACE`はPostgreSQLの拡張です。

## 関連項目

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

前のページ | ホーム | 次のページ
CREATE TABLE AS | 上に戻る | CREATE TRIGGER