Oracle ITL (Interested Transaction List) - 事務槽
Oracle ITL.
什麼是Interested Transaction List(ITL)及ITL等待? 如何減少ITL等待?如何診斷ITL等待?怎樣調整INITRANS 的值 ?
ITL是block中的相關事務資訊的記錄,包括 事務資訊的記錄(包括list編號、回滾段地址、事務型別、事務狀態[提交否]、事務在該block影響的記錄條數等)。ITL 是 consistents reads 的基礎,根據ITL 才能去回滾段中找變化前的資料 。 如果這個事務已經提交,那麼這個ITL的位置就可以被反覆使用了,因為ITL類似記錄,所以,有的時候也叫itl槽位。 每一個ITL 對應一個 SCN 。
如果這個事務已經提交,那麼,ITL槽位中還儲存的有這個事務提交時候的SCN號
對於已經提交的事務,itl槽位最好不要馬上被覆蓋,因為一致性讀可能會用到這個資訊,一致性讀的時候,可能需要從這裡獲得回滾段的入口,並從回滾段中獲得一致性讀。
itl的個數,受引數initrans控制,最大的itl個數,受maxtrans控制,在一個塊內部,預設分配了2個或3個itl的個數,如果這個塊內還有空閒空間,那麼Oracle是可以利用這些空閒空間並再分配itl的。如果沒有了空閒空間,那麼,這個塊因為不能分配新的itl,所以就可能發生itl等待。
如果在併發量特別大的系統中,最好分配足夠的itl個數,其實它並浪費不了太多的空間,或者,設定足夠的pctfree,保證itl能擴充套件,但是pctfree有可能是被行資料給消耗掉的,如update,所以,也有可能導致塊內部的空間不夠而導致itl等待。
如果想增加initrans個數,引數可以動態修改,但是,只是針對以後的新塊起效,以前的塊如果想生效,需要在新引數下,重整表資料,如重建該表,或者move該表。
需要同時修改一個block資料的session超過maxtrans引數的限制, 或者由於block空間使用過多導致資料庫無法擴充套件itl, 就會發生itl的等待了.
適當增大initrans的個數,, 一般有3-4個就足夠了..
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-671133/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ITL(Interested Transaction List)REST
- 什麼是Interested Transaction List(ITL)--Oracle?RESTOracle
- zt_Orace ITL(Interested Transaction List) 說明REST
- ITL事務槽記載-01
- oracle ITL槽Oracle
- indexedDB transaction 事務Index
- oracle set transaction read only與dbms_transaction實現事務transaction控制Oracle
- ITL與事務處理
- DAPPER 事務 TRANSACTIONAPP
- zt_ITL Cleanout和ITL中的事務狀態分析
- oracle事務隔離級別transaction isolation level初識Oracle
- oracle undo segment header 事務表transaction table系列一OracleHeader
- SAP Retail Transaction ListAI
- oracle資料庫事務transaction 不同的鎖lock型別Oracle資料庫型別
- oracle資料庫事務transaction鎖lock模式思考之一Oracle資料庫模式
- oracle事務transaction鎖lock一點兒小思考或總結Oracle
- 分散式事務 TCC-Transaction 原始碼分析 —— 事務恢復分散式原始碼
- oracle list partition列表分割槽(一)Oracle
- SQL基礎-->資料庫事務(TRANSACTION)SQL資料庫
- 分散式事務 TCC-Transaction 原始碼解析 —— 事務儲存器分散式原始碼
- Oracle 如何判斷一個死事務transaction的恢復進度Oracle
- SAP SD Transaction codes List
- 事務提交時itl上flag標記U測試!
- 關於事務的英文說明 Transaction OverviewView
- oracle資料庫事務不同事務隔離級別與v$transaction flag列思考Oracle資料庫
- Oracle自治事務autonomous_transaction用法Oracle
- oracle自治事務(PRAGMA AUTONOMOUS_TRANSACTION)Oracle
- Oracle中的自治事務(Autonomous Transaction)Oracle
- oracle不同的事務transaction隔離級別isolation level進一步理解Oracle
- mysql隱式提交事務transaction一點筆記MySql筆記
- Spring_11 Transaction(事務) 使用(XML 配置方式)SpringXML
- Spring Transaction詳解 – 手動回滾事務Spring
- Spring中事務管理org.springframework.transactionSpringFramework
- 3分鐘搞懂MySQL事務隔離級別及SET TRANSACTION影響事務MySql
- oracle 事務Oracle
- oracle事務Oracle
- oracle資料庫事務transaction隔離級別isolation level的選擇依據Oracle資料庫
- 分散式事務 TCC-Transaction 原始碼分析 —— Dubbo 支援分散式原始碼