ALTER TABLESPACE
ALTER TABLESPACE — change the definition of a tablespace
Synopsis
ALTER TABLESPACEname
RENAME TOnew_name
ALTER TABLESPACEname
OWNER TO {new_owner
| CURRENT_USER | SESSION_USER } ALTER TABLESPACEname
SET (tablespace_option
=value
[, ... ] ) ALTER TABLESPACEname
RESET (tablespace_option
[, ... ] )
Description
ALTER TABLESPACE
can be used to change the definition of a tablespace.
You must own the tablespace to change the definition of a tablespace. To alter the owner, you must also be a direct or indirect member of the new owning role. (Note that superusers have these privileges automatically.)
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 be set or reset. Currently, the only available parameters are
seq_page_cost
,random_page_cost
andeffective_io_concurrency
. Setting either value for a particular tablespace will override the planner's usual estimate of the cost of reading pages from tables in that tablespace, as established by the configuration parameters of the same name (see seq_page_cost, random_page_cost, effective_io_concurrency). This may be useful if one tablespace is located on a disk which is faster or slower than the remainder 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;
Compatibility
There is no ALTER TABLESPACE
statement in the SQL standard.