|
|
方法一:增大临时文件大小:
SQL> alter database tempfile '/oradata/cc/temp01.dbf' resize 1024M;
方法二:将临时数据文件设为自动扩展:
SQL> alter database tempfile ‘/oradata/cc/temp01.dbf’ autoextend on next 5m maxsize unlimited;
方法三:向临时表空间中添加数据文件:
SQL> alter tablespace temp add tempfile ‘/oradata/cc/temp02.dbf’ size 100m;
-----------------------------
正常来说,在完成 Select 语句、 create index 等一些使用 TEMP 表空间的排序操作后, Oracle 是会自动释放掉临时段的。
注意这里的释放,仅仅是将这些空间标记为空闲,并可重用,真正占用的磁盘空间并没有释放。 所以 Temp 表空间可能会越来越大。
排序是很耗资源的, Temp 表空间满了,关键是优化你的语句,尽量使排序减少才是上策.
---------------------------------------------------------------------------------
#相关命令
#创建临时表空间:
create temporary tablespace TEMP
tempfile '/oradata/cc/temp01.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local; --默认的是local ,可以不加,另外一种是dictionary(数据字典管理)
#不可以将 Temp 表空间 offline,但是可以将 tempfile offline。 V$TEMPFILE 显示了 tempfile 的状态。
SQL>ALTER TABLESPACE TEMP ADD TEMPFILE '/oradata/cc/temp02.dbf' SIZE 18M REUSE;
SQL>ALTER TABLESPACE TEMPFILE TEMPFILE OFFLINE;
SQL>ALTER TABLESPACE TEMPFILE TEMPFILE ONLINE;
SQL>ALTER DATABASE TEMPFILE '/oradata/cc/temp02.dbf' OFFLINE;
SQL>ALTER DATABASE TEMPFILE '/oradata/cc/temp02.dbf' ONLINE;
|
|