度量快速开发平台-专业、快速的软件定制快开平台

标题: 清理TEMPTABS表空间 [打印本页]

作者: 张兴康    时间: 2020-4-10 16:56
标题: 清理TEMPTABS表空间
#删除TEMPTABS表空间
SQL>drop tablespace temptabs including contents and datafiles;
#创建TEMPTABS表空间
SQL>create tablespace temptabs datafile '/u2/oradb/oradata/topprod/temptabs.dbf' size 4096M autoextend on next 100M;
或者删除表
[code]
select 'drop table '||segment_name ||';' from dba_segments where tablespace_name='TEMPTABS' and segment_name like 'TT%' and segment_name not like '%_FILE';

作者: 万望    时间: 2020-4-15 14:35
为啥要清理临时空间??
作者: 万望    时间: 2020-4-15 14:43
Oracle临时表空间主要用来做查询和存放一些缓冲区数据。临时表空间消耗的主要原因是需要对查询的中间结果进行排序。临时表空间的主要作用:


索引create或rebuild
Order by 或 group by
Distinct 操作
Union 或 intersect 或 minus
Sort-merge joins
analyze
作者: 万望    时间: 2020-4-15 14:45
重启数据库可以释放临时表空间,如果不能重启实例,而一直保持问题sql语句的执行,temp表空间会一直增长。即使重建了临时表空间,过一段时间后,临时表空间的使用率就达到99%,然后,表空间就开始增长,直到耗尽硬盘空间。
作者: 张兴康    时间: 2020-4-16 14:17
万望 发表于 2016-5-15 14:45
重启数据库可以释放临时表空间,如果不能重启实例,而一直保持问题sql语句的执行,temp表空间会一直增长。 ...

层主补充得很好




欢迎光临 度量快速开发平台-专业、快速的软件定制快开平台 (http://bbs.delit.cn/) Powered by Discuz! X3.2