Skip to main content
Version: 1.0.16

ALTER TABLESPACE

ALTER TABLESPACE — Change the Definition of a Tablespace

Synopsis

ALTER TABLESPACE name RENAME TO new_name

ALTER TABLESPACE name OWNER TO { new_owner | CURRENT_USER| SESSION_USER }

ALTER TABLESPACE name SET ( tablespace_option = value [, ... ] )

ALTER TABLESPACE name RESET ( tablespace_option [, ... ] )

Description

ALTER TABLESPACE can be used to change the definition of a tablespace.

You must own the tablespace to change its definition. To modify the owner, you must also be a direct or indirect member of the new owning role (note that a superuser automatically has these privileges).

Parameters

name

The name of an existing tablespace.

new_name

The new name of the tablespace. The new name cannot begin with pg_, as such names are reserved for system tablespaces.

new_owner

The new owner of the tablespace.

tablespace_option

A tablespace parameter to set or reset. Currently, the only available parameters are seq_page_cost, random_page_cost, effective_io_concurrency, and maintenance_io_concurrency. Setting these parameters for a specific tablespace will override the planner's estimate of the cost of reading pages from tables in that tablespace, and the executor's prefetch behavior, as established by the configuration parameters of the same name (see seq_page_cost, random_page_cost, effective_io_concurrency, maintenance_io_concurrency). These parameters are useful when a tablespace is located on a disk that is faster or slower than the rest of the I/O subsystem.

Examples

# Rename tablespace index_space to fast_raid:

ALTER TABLESPACE index_space RENAME TO fast_raid;

# Change the owner of tablespace index_space:

ALTER TABLESPACE index_space OWNER TO mary;

See Also

CREATE TABLESPACE, DROP TABLESPACE