oracle 11g 解決臨時表空間佔滿問題

2021-08-07 18:52:25 字數 1797 閱讀 7336

oracle 11g 清理臨時表空間

select * from (

select a.tablespace_name,

to_char(a.bytes/1024/1024,'99,999.999') total_bytes,

to_char(b.bytes/1024/1024,'99,999.999') free_bytes,

to_char(a.bytes/1024/1024 - b.bytes/1024/1024,'99,999.999') use_bytes,

to_char((1 - b.bytes/a.bytes)*100,'99.99') || '%'use

from (select tablespace_name,

sum(bytes) bytes

from dba_data_files

group by tablespace_name) a,

(select tablespace_name,

sum(bytes) bytes

from dba_free_space

group by tablespace_name) b

where a.tablespace_name = b.tablespace_name

union all

select c.tablespace_name,

to_char(c.bytes/1024/1024,'99,999.999') total_bytes,

to_char( (c.bytes-d.bytes_used)/1024/1024,'99,999.999') free_bytes,

to_char(d.bytes_used/1024/1024,'99,999.999') use_bytes,

to_char(d.bytes_used*100/c.bytes,'99.99') || '%'use

from

(select tablespace_name,sum(bytes) bytes

from dba_temp_files group by tablespace_name) c,

(select tablespace_name,sum(bytes_cached) bytes_used

from v$temp_extent_pool group by tablespace_name) d

where c.tablespace_name = d.tablespace_name

)order by tablespace_name

發現表空間使用率100%。

2、使用11g表空間收縮表空間,降低使用率,sql語句:alter  tablespace  temp shrink  space

3、檢視到temp表空間大小變為1.99m,使用率0%;

4、需新增臨時資料檔案,設定大小,sql語句如下: alter tablespace temp add tempfile '/oracle/oradata/dbaxj/temp02.dbf' size 10240m autoextend on next 1024m maxsize 30g;

5、再次檢視表空間使用率如下圖:

降低到33%,問題解決

如果您覺得我的文章給了您幫助,請為我買一杯飲料吧!以下是我的支付寶,意思一下我將非常感激!

Oracle 11g筆記 臨時表

一 臨時表 臨時表是指表中的資料是臨時存在的。臨時表的資料只存在一次會話或乙個事務中,而臨時表的定義永久存在資料字典中。我們可以用sql語句create global temporary table建立臨時表。分類 1 會話型臨時表 session specific 會話型的臨時表的資料只存在會話期...

oracle11g匯出空表

該引數意思是當建立物件 如表 初始時沒有資料,是否立即建立segment。預設是true。這會導致在按使用者匯出時,沒有segment的物件不會匯出。首先執行下面的語句 select alter table table name allocate extent from user tables wh...

oracle 11g匯出空表

oracle 11g 用exp命令匯出庫檔案備份時,發現只能匯出來一部分表而且不提示錯誤,之前找不到解決方案只能把沒匯出來的表重新建建立。後來發現是所有的空表都沒有匯出來。於是想好好查查,因為在以前的10g版本中沒有這樣的問題。查資料發現oracle 11g中有個新特性 新增了乙個引數 deferr...