Oracle 檢視 使用 UNDO 段的事務 指令碼

2022-08-17 23:33:14 字數 1591 閱讀 1050

undo 表空間管理的說明,參考:

oracle undo 表空間管理

我們可以使用如下指令碼檢視oracle undo segment段的資訊:

/* formatted on 2012/6/18 18:10:55 (qp5 v5.185.11230.41888) */

select t1.usn,

t2.name,

t1.status,

t1.latch,

t1.extents,

t1.wraps,

t1.extends

from v$rollstat t1, v$rollname t2

where t1.usn = t2.usn;

當undo 表空間出現故障的時候,我們就會需要注意這些undo segment 資訊:

currentonline redo 和 undo 損壞的處理方法

結合v$session 和v$transaction 檢視就可以確認每個事務使用使用undo segment的情況,當undo 表空間使用異常的時候,就可以使用如下的指令碼來檢查事務使用undo segment的情況:

/* formatted on 2012/6/18 13:28:55 (qp5 v5.185.11230.41888) */

select s.sid,

s.username,

u.name,

q.sql_text,

q.hash_value,

t.ubablk

from v$transaction t,

v$rollstat r,

v$rollname u,

v$session s,

v$sql q

where s.taddr = t.addr

and t.xidusn = r.usn

and r.usn = u.usn

and q.hash_value =

decode(s.sql_hash_value,

null, s.prev_hash_value,

s.sql_hash_value)

order by s.username;

skype:            tianlesoftware

email:             [email protected]

blog:  

weibo:           

twitter:

facebook:

linkedin:

-------

**需要在備註說明

oracle

表空間和資料檔案的關係,否則拒絕申請

----

dba1 群:62697716(滿);   dba2 群:62697977(滿)  dba3 群:62697850(滿)  

dba 超級群:63306533(滿);  dba4 群:83829929   dba5群: 142216823

dba6 群:158654907    dba7 群:172855474   dba總群:104207940

UNDO段重用規則

文章摘抄與 呂海波老師 的 我們知道每乙個會滾段都是迴圈利用的,只有事務提交或者過期了,它的前映像資料所占用的回滾塊,就可以被其他事務覆蓋,凡是undo塊被覆蓋或重用是有一定規則進行限制的,這些規則可能導致某些事務占用undo塊並不多,但實際上undo表空間已經無空間可用。undo塊的seq值 在每...

Oracle資料庫中Undo資料段的作用及型別

undo資料段的作用 事務回滾 transaction rollback 程式執行rollback操作。事務修復 transaction recovery rollback是recovery的一部分。讀取一致 read consistency 根據scn system change number 來...

oracle檢視回滾段資訊

select rownum,sys.dba rollback segs.segment name name,v rollstat.extents extents,v rollstat.rssize size in bytes,v rollstat.xacts xacts,v rollstat.get...