正常来说在完成select语句等一些使用temp表空间的排序操作后,oracle是会自动释放掉临时表时段的,但有时候也会遇到临时时段没有被释放,temp表空间几乎满的状况,下面给出几种处理方案:
方法一:重启数据库,这时smon进程会完成临时段的释放清理temp表空间的操作。
方法二:可以修改一下temp表空间的storage参数,让smon进程关注一下临时段,从而达到清理表空间的目的。
alter tablespace temp increase 1;
alter tablespace temp increase 0;
方法三:用语句查询谁在使用临时段
SELECT se.username,
sid,
serial#,
sql_address,
machine,
program,
tablespace,
segtype,
contents
FROM v$session se, v$sort_usage su
WHERE se.saddr = su.session_addr
杀掉正在使用临时段的进程
Alter system kill session 'sid,serial#';
把temp表空间回缩一下
alter tablespace temp coalesce;
方法四:使用诊断事件的一种方法
首先,确定temp表空间的ts#
select ts#,name from sys.ts#;
注:temp表空间的ts#是3,所以 ts#+1=4
执行清理操作:
alter session set events 'immediate trace name DROP_SEGMENTS level 4';
分享到:
相关推荐
oracle temp表空间不足解决方法
如何释放TEMP表空间占用的大量硬盘空间。
oracle定时删除表空间的数据并释放表空间
Oracle释放临时表空间脚本
Oracle中,当Temp和Undo表空间无限增大时,回收这部分空间就是个问题
能够解决oracle导入时表空间不一致问题。不错,已经帮助我好几次了,共享下!
Oracle释放过度使用的Undo表空间,脚本
ORACLE_表空间扩展方法详细介绍,查看表空间的名字及文件所在位置,对于oracle数据库的表空间,除了用手动增加大小外,还可以增加数据文件等方式扩展表空间大小
oracle-临时表空间详细介绍oracle-临时表空间详细介绍oracle-临时表空间详细介绍oracle-临时表空间详细介绍
oracle创建一个表空间创建临时表空间创建用户表空间资源的权限
Oracle 表空间建立方法
本文详细介绍和阐述了 Oracle 用户(user)和表空间(tablespace)的概念和使用方法等内容,并对用户和表空间使用过程中的注意事项、关键知识点等进行了重点标注和详尽解析,以便于读者进行深入学习和理解。...
存在多张不同表空间,这时候需要把所有的表空间都合并成一个表空间
--本文档为标准SQL代码,Oracle下适用,其他数据库如SQLserver,PGsql等不适用 1、当前登录用户,所有表占用表空间情况,提供合计 ...4、举例说明:应用表收缩及转储形式,截除过期数据,释放表空间;——可用于生产库
一、查看Oracle数据库中表空间信息的方法 1、查看Oracle数据库中表空间信息的工具方法 2、查看Oracle数据库中表空间信息的命令方法 二、查询Oracle数据库中数据文件信息的方法 1、查看Oracle数据库中数据文件信息的...
oracle数据库导入、导出数据、创建表空间、创建用户、用户授权等操作
oracle表数据已经删除,但是表空间不能释放的情况;支持查询单表占用空间大小,释放掉占用的无效空间;支持批量生成释放脚本,释放掉空表占用的表空间;
Oracle临时表空间的清理步骤,解决数据库临时表空间满的问题。
数据库备份恢复时,获取oracle表空间脚本,创建用户等