ALTER TABLESPACE可以被用於更改一個資料表空間的定義。
簡介
ALTER TABLESPACE可以被用於更改一個資料表空間的定義。
要更改一個資料表空間的定義,你必須擁有它。要修改擁有者,你還必須是新擁有角色的一個直接或間接成員(注意超級使用者自動擁有這些特權)。
文法
ALTER TABLESPACE name RENAME TO new_name
ALTER TABLESPACE name OWNER TO { new_owner | CURRENT_USER | SESSION_USER }
ALTER TABLESPACE name SET ( tablespace_option = value [, ... ] )
ALTER TABLESPACE name RESET ( tablespace_option [, ... ] )參數
name一個現有資料表空間的名稱。new_name該資料表空間的新名稱。新名稱不能以pg_開始,因為這類名稱被保留用於系統資料表空間。new_owner該資料表空間的新擁有者。tablespace_option要設定或者重設的一個資料表空間參數。當前,唯一可用的參數是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;