Oracle
Oracle 塊使用情況
我想知道一個奇怪的死鎖,在檢查了所有其他組件後,我認為它是 Oracle 11.2 中的 INITRANS 問題。
現在出現了三個問題:
- 有什麼方法可以分析塊有多滿?
- 我的數據庫不久前達到了它的最大表空間大小並開始拒絕插入,然後我添加了另一個數據文件,但只有當幾乎所有空間都用完時才會增長。我的 PCT_USED 是 96%。我的假設是否正確,即所有數據塊都將被完全填充並且 INITRANS 死鎖很可能?
- 有沒有辦法在死鎖跟踪中看到 INITRANS 問題?
我也對部分答案感到高興。
Initrans 對於表的相同塊中的並發插入是最重要的。當塊頭爭用時,您通常會認識到這一點。只要塊中有足夠的空閒空間,列表就可以在塊的空閒空間中增長。因此,如果您知道對於某些表,您有許多並發作業在表的同一端插入數據,則將 INITRANS 設置為與並發作業數相似的值會有所幫助。
pct_used 意味著-在您的情況下-一旦塊獲得 4% 的可用空間,該塊將進入空閒列表以接受新行。
pct_free 意味著一旦塊中的可用空間低於 pct_free,該塊將不再接受新行,以便為行可以增長的更新保留空間。
表統計資訊顯示類似 AVG_SPACE、AVG_ROW_LEN 的統計資訊。