SET SESSION TEMPSPACECAP
设置 会话发出的任何请求可以消耗的最大临时文件存储量。如果查询的执行计划所需的存储空间超出会话 TEMPSPACECAP,将会返回错误。
语法
SET SESSION TEMPSPACECAP limit
参数
-
限制
- 分配给当前会话的最大临时文件存储量,为以下几项之一:
-
NONE
(默认值):临时存储不受限制 -
= DEFAULT
:会话 TEMPSPACECAP 设置为用户的 TEMPSPACECAP 值。 -
用于指定存储限制的字符串,为以下几项之一:
-
int%
将最大值表示为资源管理器可用的临时总存储的百分比,其中 int 为 0 至 100 之间的整数值。例如:SET SESSION TEMPSPACECAP '40%';
-
int{K|M|G|T}
以 KB、MB、GB 或 TB 表示存储分配。例如:SET SESSION TEMPSPACECAP '10G';
-
-
特权
非超级用户:
-
仅限于设置自己的会话
-
会话 TEMPSPACECAP 不能大于其自己的 TEMPSPACECAP。
示例
将会话 TEMPSPACECAP 设置为 20 GB:
=> SET SESSION TEMPSPACECAP '20G';
SET
=> SHOW TEMPSPACECAP;
name | setting
--------------+----------
tempspacecap | 20971520
(1 row)
注意
SHOW 以 KB 为单位显示 TEMPSPACECAP。将会话 TEMPSPACECAP 设置为不受限制:
=> SET SESSION TEMPSPACECAP NONE;
SET
=> SHOW TEMPSPACECAP;
name | setting
--------------+-----------
tempspacecap | UNLIMITED
(1 row)