UNDO段重用規則

2021-09-29 05:18:04 字數 803 閱讀 3969

文章摘抄與(呂海波老師 的)-我們知道每乙個會滾段都是迴圈利用的,只有事務提交或者過期了,它的前映像資料所占用的回滾塊,就可以被其他事務覆蓋,

凡是undo塊被覆蓋或重用是有一定規則進行限制的,這些規則可能導致某些事務占用undo塊並不多,但實際上undo表空間已經無空間可用。

undo塊的seq值

在每個回滾塊(重用原則: 被重用塊的seq值必須小於新一輪的seq值)

所以並不是已經提交超過undo_retention引數就可以被覆蓋。

2 號區3號block 一直未提交。

放繼續使用2號區時發現2號區3號塊仍然未提交。,於是不能使用2號區的所有塊,也不能跳過,oracle會進行一次膨脹。

新增乙個新區到1號區之後為 新的2號區:

也就是說,只要某個區一直不被使用,該undo 段就不算使用了一輪,這樣即使1,2號區早已提交,且超過undo_retention,他們的undo塊也不會被覆蓋。

undo回滾段 OCP試驗 1 1更新

undo回滾段原理圖 1,看undo的parameter undo management 是auto 還有manual 自動模式下需要撤銷表空間undo tablespace undotbs1 manual下不是這樣,manual手工下需要手工建立回滾rollback。刪除表emp scott se...

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

undo 表空間管理的說明,參考 oracle undo 表空間管理 我們可以使用如下指令碼檢視oracle undo segment段的資訊 formatted on 2012 6 18 18 10 55 qp5 v5.185.11230.41888 select t1.usn,t2.name,t...

Undo 回滾段 對應的系統引數

回滾段表空間,為什麼叫undo,而不是rollback?我們對資料庫操作理解為do,所以反向操作就是undo,通過對應的undo就可以達到回滾目的。第一行,undo management 為auto表示自動回滾段管理,空間不夠時自動擴充套件。第二行,undo retention 為900表示dml需...