↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

Wiki / SQL 命令

ALTER TABLESPACE

更改一个表空间的定义

英文手册覆盖始于 PostgreSQL 6.4. 来源历史与运行验证各自保留独立版本边界。

当前阅读 PG 18·选择有来源记录的版本

anchor
SQL-ALTERTABLESPACE
file
sql-altertablespace.html
lang
en
name
ALTER TABLESPACE
purpose
change the definition of a tablespace
purpose zh
未知
sections same as
未知
slug
18

语法

ALTER TABLESPACE name RENAME TO new_name
ALTER TABLESPACE name OWNER TO { new_owner | CURRENT_ROLE | CURRENT_USER | SESSION_USER }
ALTER TABLESPACE name SET ( tablespace_option = value [, ... ] )
ALTER TABLESPACE name RESET ( tablespace_option [, ... ] )
语法图

从左向右阅读;分支表示选择,旁路表示可选,循环表示重复。点击带下划线的参数可打开对应规则。

ALTER TABLESPACE name RENAME TO new_name
ALTER TABLESPACE · 语法 2
ALTER TABLESPACE name OWNER TO new_owner CURRENT_ROLE CURRENT_USER SESSION_USER
ALTER TABLESPACE · 语法 3
ALTER TABLESPACE name SET ( tablespace_option = value , )
ALTER TABLESPACE · 语法 4
ALTER TABLESPACE name RESET ( tablespace_option , )

版本定义 PG 18

ALTER TABLESPACE name RENAME TO new_name
ALTER TABLESPACE name OWNER TO { new_owner | CURRENT_ROLE | CURRENT_USER | SESSION_USER }
ALTER TABLESPACE name SET ( tablespace_option = value [, ... ] )
ALTER TABLESPACE name RESET ( tablespace_option [, ... ] )

描述

ALTER TABLESPACE可以用于更改表空间的定义。

要更改表空间的定义,你必须拥有该表空间。要修改拥有者,你还必须能够对新拥有者角色执行SET ROLE。(注意,超级用户自动具有这些权限。)

参数

name

现有表空间的名称。

new_name

该表空间的新名称。新名称不能以pg_开头,因为这类名称保留给系统表空间使用。

new_owner

该表空间的新拥有者。

tablespace_option

要设置或者重置的表空间参数。当前,唯一可用的参数是 seq_page_cost、random_page_cost、effective_io_concurrency以及maintenance_io_concurrency。为一个特定表空间设定这些值将覆盖由同名配置参数确定的规划器对该表空间中表页读取的常规代价估计,以及会发起的并发 I/O 数量(见seq_page_cost、random_page_cost、effective_io_concurrency、maintenance_io_concurrency)。如果一个表空间位于一个比 I/O 子系统其余部分更慢或者更快的磁盘上,这些参数就能发挥作用。

示例

将表空间index_space重命名为fast_raid:

ALTER TABLESPACE index_space RENAME TO fast_raid;

更改表空间index_space的拥有者:

ALTER TABLESPACE index_space OWNER TO mary;

兼容性

在 SQL 标准中没有 ALTER TABLESPACE语句。

另见

CREATE TABLESPACE, DROP TABLESPACE

比较版本

完整来源事实

synopsis html

ALTER TABLESPACE <em class="replaceable"><code>name</code></em> RENAME TO <em class="replaceable"><code>new_name</code></em>
ALTER TABLESPACE <em class="replaceable"><code>name</code></em> OWNER TO { <em class="replaceable"><code>new_owner</code></em> | CURRENT_ROLE | CURRENT_USER | SESSION_USER }
ALTER TABLESPACE <em class="replaceable"><code>name</code></em> SET ( <em class="replaceable"><code>tablespace_option</code></em> = <em class="replaceable"><code>value</code></em> [, ... ] )
ALTER TABLESPACE <em class="replaceable"><code>name</code></em> RESET ( <em class="replaceable"><code>tablespace_option</code></em> [, ... ] )

synopsis text

ALTER TABLESPACE name RENAME TO new_name
ALTER TABLESPACE name OWNER TO { new_owner | CURRENT_ROLE | CURRENT_USER | SESSION_USER }
ALTER TABLESPACE name SET ( tablespace_option = value [, ... ] )
ALTER TABLESPACE name RESET ( tablespace_option [, ... ] )

来源引用

完整定义与证据 JSON

定义来源

center · PostgreSQL 18 · a709ab85

正文语言: zh-Hans · 1b5ca64c