刪除暫存資料表空ora-25152錯誤,刪除ora-25152錯誤

來源:互聯網
上載者:User

刪除暫存資料表空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
然後呢這個暫存資料表被開啟了,由於某種原因你想更新或者改動資料庫表記錄,但是呢資料表不在當前工作區,所以電腦認為是當前工作區的暫存資料表,所以會提示不能更新暫存資料表
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.