欢迎投稿

今日深度:

删除临时表空ora-25152错误,删除ora-25152错误

删除临时表空ora-25152错误,删除ora-25152错误


删除临时表空间,或者收缩临时表空间经常会出现表空间占用等情况。

下面我们就对这种情况进行处理,

首先查找被锁的sid:

SELECT a.INST_ID,b.TABLESPACE
, b.segfile#
, b.segblk#
, ROUND ( ( ( b.blocks * p.VALUE ) / 1024 / 1024 ), 2 ) size_mb
, a.SID
, a.serial#
, a.username
, a.osuser
, a.program
, a.status
FROM gv$session a
, gv$sort_usage b
, gv$process c
, gv$parameter p
WHERE p.NAME = 'db_block_size'
AND a.saddr = b.session_addr
AND a.paddr = c.addr
ORDER BY b.TABLESPACE
, b.segfile#
, b.segblk#
, b.blocks;
通过查找就可以找到相关临时表空间的sid,和serial#
然后同过ALTER system kill session ‘sid,serial#'删除。
下面就可以删除临时表空间或者收缩临时表空间。
下面介绍一种更为方便的方法
select 'alter system kill session '''||a.sid||','||a.serial#||''' immediate;'
from 
   v$session    a,
   v$sort_usage b,
   v$process    c,
   v$parameter  d
where 
   d.name = 'db_block_size'
and 
   a.saddr = b.session_addr
and 
   a.paddr = c.addr
and 
   b.tablespace='TEMP' -- 需要收缩或者删除的临时表空间名称
order by 
   b.tablespace,
   b.segfile#,
   b.segblk#,
   b.blocks;
可以批量的结束临时表空间的占用。





在oracle数据库中,需要临时创建一个表来使用,那是否可以将该表的创建在临时表空

当然可以,但是临时表和临时创建一张表是两个概念。
临时表是
create global temporary table。。。
分成两种,一种是一提交就删除数据,一种是提交后保留数据
你不能把
create table创建的表放在临时表空间里面
 

VF在连编时出现错误“不可以更新临时表”怎解决 (原用应该不是临时表)

那是因为你用到了临时表,如select * from 表名 into cursor temp
然后呢这个临时表被打开了,由于某种原因你想更新或者改动数据库表记录,但是呢数据表不在当前工作区,所以电脑认为是当前工作区的临时表,所以会提示不能更新临时表
 

www.htsjk.Com true http://www.htsjk.com/shujukunews/2605.html NewsArticle 删除临时表空ora-25152错误,删除ora-25152错误 删除临时表空间,或者收缩临时表空间经常会出现表空间占用等情况。 下面我们就对这种情况进行处理, 首先查找被锁的sid: SELECTa.INST_I...
相关文章
    暂无相关文章
评论暂时关闭