存儲參數storage子句含義及設置技巧
2024-07-21 02:36:21
供稿:網友
系統環境:
1、操作系統:windows 2000
2、數據庫: Oracle 8i R2 (8.1.6) for NT 企業版
3、安裝路徑:C:/ORACLE
解釋:
可用于:表空間、回滾段、表、索引、分區、快照、快照日志
參數名稱 缺省值 最小值 最大值 說明
INITIAL 5(數據塊) 2(數據塊) 操作系統限定 分配給Segment的第一個Extent的大小,以字節為單位,這個參數不能在alter語句中改變,假如指定的值小于最小值,則按最小值創建。
NEXT 5(數據塊) 1(數據塊) 操作系統限定 第二個Extent的大小等于NEXT的初值,以后的NEXT值=前一NEXT大小乘以(1+PCTINCREASE/100),假如指定的值小于最小值,則按最小值創建。
假如在alter語句中改變NEXT的值,則下一個分配的Extent將具有指定的大小,而不管上一次分配的Extent大小和PCTINCREASE參數值。
MINEXTENTS 1(Extent)
回滾段為2個Extent 1(Extent)
回滾段為2個Extent 操作系統限定 Segment第一次創建時分配的Extent數量
MAXEXTENTS 根據數據塊大小而定 1(Extent)
回滾段為2個Extent 無限制 隨著Segment中數據量的增長,最多可分配的Extent數量
PCTINCREASE 50%
(Oracle816中為0%) 0% 操作系統限定 指定第三個及其后的Extent相對于上一個Extent所增加的百分比,
假如PCTINCREASE為0,則Segment中所有新增加的Extent的大小都相同,等于NEXT的值,
假如PCTINCREASE大于0,則每次計算NEXT的值(用上面的公式),
PCTINCREASE不能為負數。
創建回滾段時,不可指定此參數,回滾段中此參數固定為0。
OPTIMAL ---- 不能小于回滾段初始分配空間 操作系統限定 僅與回滾段有關,當回滾段因為增長、擴展而超過此參數的設定范圍時,Oracle系統會根據情況動態地重新分配Extents,試圖收回多分配的Extent。
FREELISTS 1 1 數據塊大小限制 只能在CREATE TABLE、CLUSTER、INDEX中指定FREELISTS和FREELIST GROUPS參數。
模式對象中每一個自由列表組中自由列表的數量
FREELIST GROUPS 1 1 取決于Oracle并行實例的數量 用戶創建的數據庫對象的自由列表組的數量,只有用OPS并行服務器選項時才使用這一參數,一個實例對應一個組。
BUFFER_POOL ---- ---- ---- 給模式對象定義缺省緩沖池(高速緩存),該對象的所有塊都存儲在指定的高速緩存中,對于表空間或回滾段無效。
建議PCTINCREASE參數設置為0,可使碎片最小化,使每一個Extent都相同(等于NEXT值)
一旦建立了某個對象,它的INITIAL和MINEXTENTS參數不能修改(Oracle 816中可修改MINEXTENTS參數)
對于NEXT和PCTINCREASE的任何修改都只影響后來分配的那些Extent
在分配一個新Extent時,系統直接按NEXT的值分配一個Extent,
然后用公式:前一NEXT值*(1+PCTINCREASE/100) 計算出下一個應該分配的Extent的大小,
并把計算結果保存到相關數據字典的NEXT_EXTENT列上,做為下一個應該分配的Extent的大小。
CREATE TABLE test(a number)
STORAGE(
INITIAL 100K
NEXT 100K
MINEXTENTS 2
MAXEXTENTS 100
PCTINCREASE 100);
解釋:
初始給test表分配兩個Extent,
第一個Extent是100K,因INITIAL=100K
第二個Extent是100K,因NEXT=100K
假如因表內數據增長,需要分配第三個Extent,因PCTINCREASE是100,則
第三個Extent是200K=100K+100K
第四個Extent是400K=200K+200K
可通過數據字典表DBA_TABLES、ALL_TABLES、USER_TABLES查看參數設置情況,如:
select table_name,initial_extent,next_extent,min_extents,max_extents,pct_increase from user_tables;
TABLE_NAME INITIAL_EXTENT NEXT_EXTENT MIN_EXTENTS MAX_EXTENTS PCT_INCREASE
---------- -------------- ----------- ----------- ----------- ------------
TEST 106496 212992 2 100 100