DBSPACETEMP 配置参数指定一个数据库空间列表,缺省情况下数据库服务器将临时表和排序文件放在这些数据库空间中。该配置参数中列出的数据库空间可能部分或全部是临时数据库空间,它们是专门为存储临时表和排序文件而保留的。
如果数据库服务器通过 SELECT INTO TEMP 操作(该操作会创建 TEMP 表)将数据插入到一个临时表中,那么该临时表会使用循环分布式存储。该临时表的分段会在
DBSPACETEMP 配置参数或
DBSPACETEMP 环境变量中列出的临时数据库空间中创建。例如,以下查询使用循环分布式存储:
SELECT col1 FROM tab1
INTO TEMP temptab1 WITH NO LOG;
DBSPACETEMP 配置参数使数据库管理员可以限制数据库服务器用于临时存储的数据库空间。
要点: DBSPACETEMP 配置参数没有在 onconfig.std 文件中设置。要实现临时表和排序文件的最佳性能,请使用 DBSPACETEMP 指定两个或更多位于不同磁盘上的数据库空间。
- 提示:
-
- 如果在磁盘数有限的小型系统上工作,并且无法将临时数据库空间置于不同的磁盘驱动器上,那么可以考虑使用 1(或可能为 2)个临时数据库空间。这可能会减少与临时数据库空间关联的日志记录。
- 如果有许多磁盘驱动器,那么可以并行执行许多操作(例如排序、连接和临时表),而无需多个临时数据库空间。您拥有的临时数据库空间数与您希望发散 I/O 的程度相关。一开始采用
4 个临时数据库空间比较合适。如果创建过多小型临时数据库空间,那么将没有足够空间来执行大型对象的非并行创建。