首页 / ORACLE / Oracle中临时表空间的清理
Oracle中临时表空间的清理
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Oracle中临时表空间的清理,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1921字,纯文字阅读大概需要3分钟。
内容图文
作者:iamlaosong
Oracle临时表空间主要用来做查询和存放一些缓冲区数据。临时表空间消耗的主要原因是需要对查询的中间结果进行排序。 临时表空间的主要作用:
索引create或rebuild
Order by 或 group by
Distinct 操作
Union 或 intersect 或 minus
Sort-merge joins
analyze
为了防止临时表空间无限制的增加,我采用隔一段时间就重建临时表空间的方法,为了方便,我保留两组语句,轮流执行即可,假定现在临时表空间名称是temp,新建一个tempa表空间,删除temp表空间,方法如下:
create temporary tablespace TEMPA TEMPFILE ‘/opt/app/oracle/oradata/orcl/tempa01.dbf ‘ SIZE 8192M REUSE AUTOEXTEND ON NEXT 1024K MAXSIZE UNLIMITED; --创建中转临时表空间
alter database default temporary tablespace tempa; --改变缺省临时表空间
drop tablespace temp including contents and datafiles; --删除原来临时表空间
新建的临时表空间如下图所示:
过一段时间,当临时表空间增长到一定的程度,再新建一个temp表空间,删除tempa表空间,即:
create temporary tablespace TEMP TEMPFILE ‘/opt/app/oracle/oradata/orcl/temp01.dbf ‘ SIZE 8192M REUSE AUTOEXTEND ON NEXT 1024K MAXSIZE UNLIMITED; --创建中转临时表空间
alter database default temporary tablespace temp; --改变缺省临时表空间
drop tablespace tempa including contents and datafiles; --删除原来临时表空间
这样就可以保证临时表空间不至于过大,防止过多的占用有限的硬盘空间。
=====================================================
用下面语句可查看当前临时表空间使用空间大小与正在占用临时表空间的sql语句:
select sess.SID, segtype, blocks * 8 / 1000 "MB", sql_text
from v$sort_usage sort, v$session sess, v$sql sql
where sort.SESSION_ADDR = sess.SADDR
and sql.ADDRESS = sess.SQL_ADDRESS
order by blocks desc;
下面语句查询临时表空间的空闲程度:
select ‘the ‘ || name || ‘ temp tablespaces ‘ || tablespace_name ||
‘ idle ‘ ||
round(100 - (s.tot_used_blocks / s.total_blocks) * 100, 3) ||
‘% at ‘ || to_char(sysdate, ‘yyyymmddhh24miss‘)
from (select d.tablespace_name tablespace_name,
nvl(sum(used_blocks), 0) tot_used_blocks,
sum(blocks) total_blocks
from v$sort_segment v, dba_temp_files d
where d.tablespace_name = v.tablespace_name(+)
group by d.tablespace_name) s,
v$database;
原文:http://blog.csdn.net/iamlaosong/article/details/46376959
内容总结
以上是互联网集市为您收集整理的Oracle中临时表空间的清理全部内容,希望文章能够帮你解决Oracle中临时表空间的清理所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。