ALTER TABLESPACE
ALTER TABLESPACE
ALTER TABLESPACE - change the definition of a tablespace
Synopsis
ALTER TABLESPACEname
RENAME TOnew_name
ALTER TABLESPACEname
OWNER TO {new_owner
| CURRENT_ROLE | 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 able to
SET ROLE
to 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
,effective_io_concurrency
andmaintenance_io_concurrency
. Setting these values for a particular tablespace will override the planner's usual estimate of the cost of reading pages from tables in that tablespace, and how many concurrent I/Os are issued, as established by the configuration parameters of the same name (see seq_page_cost , random_page_cost , effective_io_concurrency , maintenance_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.