支援的版本:目前 (17) / 16 / 15 / 14 / 13
開發版本:devel
不支援的版本:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0

ALTER TABLESPACE

ALTER TABLESPACE — 變更表格空間的定義

概要

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_costrandom_page_costeffective_io_concurrencymaintenance_io_concurrency。為特定表格空間設定這些值將覆蓋規劃器對從該表格空間讀取頁面的成本的通常估計,以及執行器的預取行為,這由相同名稱的配置參數建立(請參閱 seq_page_costrandom_page_costeffective_io_concurrencymaintenance_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 陳述式。

提交更正

如果您在文件中發現任何不正確、與您使用特定功能的經驗不符或需要進一步澄清的地方,請使用此表單來報告文件問題。