DBUPSPACE 环境变量

使用 DBUPSPACE 环境变量,可以指定和限制 UPDATE STATISTICS 语句在尝试同时构造多列分布时可使用的系统磁盘空间量。

max
是一个正整数,指定要为 UPDATE STATISTICS 操作中排序而分配的最大磁盘空间 (KB)。
default
为一个正整数,指定不使用 PDQ 时要分配的最大内存数量 (4-50 MB)。
选项
无符号整数:
  • 1:不使用任何索引来排序。在 sqexplain.out 中打印更新统计信息的整个计划。
  • 2:不使用任何索引来排序。不打印更新统计信息的计划。
  • 3 以上:使用可用的索引来排序。在说明输出文件中打印更新统计信息的整个计划。
例如,要将 DBUPSPACE 设置为 2,500 KB 的磁盘空间和 1 兆字节的内存,请输入以下命令:
setenv DBUPSPACE 2500:1 

在设置此值后,数据库服务器可在执行 UPDATE STATISTICS 语句期间使用不超过 2,500 KB 的磁盘空间。如果表需要 5 兆字节的磁盘空间用于排序,那么 UPDATE STATISTICS 分两次完成该任务;每次构造一半列的分布。

如果未设置 DBUPSPACE,那么对于 max,缺省值为 1 兆字节 (1,024 KB),而对于 default,缺省值为 15 兆字节。如果尝试将 DBUPSPACE 设置为小于 1,024 KB 的任何值,它会自动设置为 1,024 KB,但不会返回任何错误消息。如果此值尚未大到足以允许一次构造多个分布,那么至少会完成一个分布,即使完成此任务所需的磁盘空间量超过 DBUPSPACE 指定的磁盘空间量也是如此。