TEMP临时表空间,是存放临时表数据、临时结果集等,当大量的数据排序或创建索引等占用临时表空间。
根据官方文档,TEMP 表空间完全由 DM 数据库自动维护。当用户的 SQL 语句需要磁盘空间来完成某个操作时,DM 数据库会从 TEMP 表空间分配临时段。如创建索引、无法在内存中完成的排序操作、SQL 语句中间结果集以及用户创建的临时表等都会使用到 TEMP表空间。所以,TEMP表空间的大小需要按照实际情况配置好。
下面是修改TEMP表空间大小的方法:
一、TEMP表空间的大小在数据库启动时是可以重建的,这个是根据数据库的配置参数TEMP_SIZE的值来控制。
查看数据库的配置参数 TEMP_SIZE
select * from v$parameter t where name = 'TEMP_SIZE';
修改数据库的配置参数 TEMP_SIZE
alter system set 'TEMP_SIZE'=100 spfile;
修改TEMP_SIZE的值,不影响当前TEMP表空间大小。查看数据库TEMP表空间大小
select * from "DBA_TABLESPACES" where DBA_TABLESPACES.TABLESPACE_NAME = 'TEMP';
二、在数据库运行期间,TEMP表空间在线的数据文件大小是可以被改动的。但一旦数据库关闭和重启启动后,TEMP表空间的数据文件初始大小会根据TEMP_SIZE的指定。
修改当前运行TEMP表空间的数据文件大小
alter tablespace "TEMP" resize datafile 'TEMP.DBF' to 64;
重启后,再查看TEMP_SIZE的值和TEMP表空间的数据文件大小。
文章
阅读量
获赞