ALTER TABLESPACE
примечание
Эта страница переведена при помощи нейросети GigaChat.
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_cost
,random_page_cost
,effective_io_concurrency
иmaintenance_io_concurrency
. Установка этих значений для конкретного табличного пространства переопределяет обычные оценки планировщика по стоимости чтения страниц из таблиц в этом пространстве, а также поведение по предварительной выборке данных в исполнителе, заданное конфигурационными параметрами с теми же именами (смотрите описания параметров seq_page_cost, random_page_cost, effective_io_concurrency, maintenance_io_concurrency). Это может быть полезно, если табличное пространство расположено на диске, который работает быстрее или медленнее, чем остальная часть подсистемы ввода-вывода.
Примеры
Переименование табличного пространства index_space
в fast_raid
:
ALTER TABLESPACE index_space RENAME TO fast_raid;
Смена владельца табличного пространства index_space
:
ALTER TABLESPACE index_space OWNER TO mary;
Совместимость
В стандарте SQL нет команды ALTER TABLESPACE
.