回覆列表
  • 1 # 使用者2112386849069

    1、能夠對空閒空間產生影響的引數有兩個:pctfree和pctused。對於手工管理的表空間,在特定段中的所有資料塊,可使用兩個空間管理引數pctfree和pctused來控制insert和update對空閒空間的使用。當建立或修改表時可指定這兩個引數。建立或修改一個擁有自己的索引段的索引時可指定pctfree引數。pctfree引數為塊中行的更新預留了空閒空間的最小百分比,預設值為10。例如,假定在Createtable語句中指定了pctfree為20,則說明在該表的資料段內每個資料塊的20%被作為可利用的空閒空間,用於更新已在資料塊記憶體在的資料行。其餘80%是用於插入新的資料行,直到達到80%為止。顯然,pctfree值越小,則為現存行更新所預留的空間越少。因此,如果pctfree設定得太高,則在全表掃描期間增加I/O,浪費磁碟空間;如果pctfree設定得太低,則會導致行遷移。2、每個塊都有一個塊首部。這個塊首部中有一個事務表。事務表中會建立一些條目來描述哪些事務將塊上的哪些行/元素鎖定。這個事務表的初始大小由物件的INITRANS設定指定。對於表,這個值預設為2(索引的INITRANS也預設為2)。事務表會根據需要動態擴充套件,最大達到MAXTRANS個條目(假設塊上有足夠的自由空間)。所分配的每個事務條目需要佔用塊首部中的23~24位元組的儲存空間。注意,對於Oracle10g,MAXTRANS則會忽略,所有段的MAXTRANS都是255。也就是說,如果某個事物鎖定了這個塊的資料,則會在這個地方記錄事務的標識,當然那個事務要先看一下這個地方是不是已經有人佔用了,如果有,則去看看那個事務是否為活動狀態。如果不活動,比如已經提交或者回滾,則可以覆蓋這個地方。如果活動,則需要等待(閂的作用)3、storage指的是和儲存相關的選項4、initial3M--分配給segment的第一個extent的大小,以位元組為單位,這個引數不能在alter語句中改變,如果指定的值小於最小值,則按最小值建立。minextents1--segment第一次建立時分配的extent數量maxextentsunlimited--隨著segment中資料量的增長,最多可分配的extent數量無限制

  • 中秋節和大豐收的關聯?
  • 俄羅斯厲害的地方?