ALTER TABLESPACE

名称

ALTER TABLESPACE --  修改一个表空间的定义

大纲

ALTER TABLESPACE name RENAME TO new_name
ALTER TABLESPACE name OWNER TO new_owner
ALTER TABLESPACE name SET ( tablespace_option = value [, ... ] )
ALTER TABLESPACE name RESET ( tablespace_option [, ... ] )

描述

ALTER TABLESPACE改变一个表空间的定义。

要使用ALTER TABLESPACE,你必须是该表空间的所有者。 要修改所有者,你还必须是新的所有角色的直接或间接成员。不过,超级用户自动获得这些权限。

参数

name

一个现有的表空间的名称。

new_name

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

new_owner

表空间的新所有者。

tablespace_option

可以设置或者重置的表空间参数。目前,可以设置的参数是seq_page_costrandom_page_cost。 为一个表空间设置任一个值,将会覆盖在那个表空间中从表中阅读页的成本优化器的一般估计值,正如同通过同名的配置参数建立的。 (参阅seq_page_costrandom_page_cost)。 如果表空间所在的磁盘是一个更快或更慢的其它io子系统,那么这些参数是有用的。

例子

把表空间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