Oracle
Oracle - 如果我有 MAXTRANS,為什麼還需要 INITRANS?
INITRANS
可能是一個虛擬問題,但我仍然不明白如果我已經有了參數,為什麼還需要MAXTRANS
參數。我知道,INITRANS
表的預設值為 1,索引為 2,但我們也有MAXTRANS
預設值為 255(我猜這取決於塊大小)。而且,因為我們在MAXTRANS中有255個,ITL的數量可以根據需要動態增長,那麼,我為什麼需要關心INITRANS
呢?有人可以解釋一下嗎?我需要學習,因為我在數據庫中有幾個事件:
enq: TX - allocate ITL entry
另外,當我更改
INITRANS
現有表時,是否還需要移動表以影響該表中的所有現有數據塊?或者只是改變INITRANS
就足夠了?
ITL 不能在已滿的塊中增長。
INITRANS 為其大小設置了保證最小值。
更改表上的 INITRANS 後,您需要移動它,以便重新組織其塊以保留 ITL 所需的空間。