使用 DBSPACETEMP 配置参数来指定 dbspace 列表,数据库服务器用来全面地管理临时
表存储。
DBSPACETEMP 通过启用数据库服务器跨多磁盘有效地拓展临时表 I/O。备份期间,数据
库服务器还使用临时 dbspace 来保存数据的前映像,这些数据在发生备份时会被重写。
onconfig.std 值
未设定。临时表存储在 root dbspace 中。
分隔符
逗号或冒号(无空白)
值
一个或多个 dbspace 名称。这些 dbspace 可是标准 dbspace、临时 dbspaces 或二者都是。
用冒号号或逗号分隔 dbspace 名称。列表长度不可超过 254 字节。
GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 57 -
生效
编辑 onconfig 文件并重启数据库服务器之后。
当您通过运行 onmode -wf 命令在 onconfig 文件中动态地重置该值时。
当您通过运行 onmode -wm 命令重置内存中的该值时。
用法
DBSPACETEMP 可包含非缺省页大小的 dbspace,但是 DBSPACETEMP 列表中的所有
dbspace 必须有相同的页大小。
如果客户端应用程序需要指定一个 dbspace 的替代列表来用于临时表定位,则客户端可使
用 DBSPACETEMP 环境变量来罗列。仅当您使用 UPDATE STATISTICS 的 HIGH 选项
时,数据库服务器才使用 DBSPACETEMP 环境变量指定的存储定位。
如果在 DBSPACETEMP 配置参数或环境变量中同时罗列了标准 dbspace 和临时
dbspace,则引用下列规则:
如果空间充足,则在临时 dbspace 中创建排序、备份、隐式和非日志显式临时表。
不用 WITH NO LOG 选项,在标准(而非临时)dbspace 中创建显式临时表。
当您用 onspaces 实用程序创建临时 dbspace 时,数据库服务器不适用新创建的临时
dbspace,直到您设置 DBSPACETEMP 配置参数或环境变量并重启服务器。
DBSPACETEMP 环境变量立即生效并取代 DBSPACETEMP 配置参数。
使用 GBase 8s 散列联接溢出(Hash Join Overflow)和 DBSPACETEMP
如果您不设置 DBSPACETEMP 环境变量或 DBSPACETEMP 配置参数,则 GBase 8s 使
用操作系统目录或文件来指向一些数据库操作引起的任何溢出。
您可以下列方式指定操作系统目录或文件:
带有 GROUP BY 子句的 SELECT 语句
带有 ORDER BY 子句的 SELECT 语句
散列联接操作
嵌套循环联接操作
索引构建
排序溢出文件的位置
下表罗列您可使用来指定排序溢出文件的位置的环境变量和 ONCONFIG 配置参数。
表 1. 排序溢出文件的位置
变量或参数
排序溢出文件的位置
PSORT_DBTEMP 环境变量
在环境变量中指定的位置
DBSPACETEMP 环境变量
在环境变量中指定的位置
GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 58 -
ONCONFIG 文件中指定的 DBSPACETEMP
配置参数
ONCONFIG 文件 DBSPACETEMP 配置参数中指定
的 dbspace
如果指定多于一个变量或参数,则 GBase 8s 确定排序溢出文件位置优先次序是:
1.
PSORT_DBTEMP 环境变量
2.
DBSPACETEMP 环境变量
3.
DBSPACETEMP ONCONFIG 变量
4.
DUMPDIR
5.
$GBASEDBTDIR/tmp
如果未设置环境变量或配置参数,则排序溢出文件置于 $GBASEDBTDIR/tmp 目录中,且
临时表置于 rootdbspace 中。