Oracle存儲結構詳解
1.一個數據文件只能同時屬於一個表空間
2.段是可以跨域數據文件的。但是一般不能跨越表空間。分區表可以跨越表空間,堆表不能跨越表空間。
3.區是連續的block組成的,不能跨域文件。對於區表空間有兩種不同的管理方式:本地的管理方式和數據字典的管理方式。建立表空間的時候的可以設定使用哪種方式
數據字典形式 UET$ used FER$ free 不適合並發很高的情況
本地管理方式 使用bit map(位圖):如果使用了表示為1,沒有使用表示為0,只要0是連續的,表示就是連續的空間,就不需要去合並
查看表空間的管理方式,可以查看每一個表空間的管理方式
> SELECT TABLESPACE_NAME,EXTENT_MANAGEMENT FROM dba_tablespaces;
段空間的管理方式,即對段的數據塊進行管理
塊分為塊頭,空間和數據。ORACLE認為這樣的方式是最節省空間的
主要分為PCTFREE和PCTUSED
free 10% 表示只能存入90%的空間
原本如果無法寫入則會進行一個行遷移的動作,將整行遷移到另一個塊
設定一個pctfree就是一定程度上避免行遷移這樣的情況產生
used 40% 表示下降到40%後才能插入數據
這是為了防止進行頻繁的上升下降
塊參數
initrans :初始
maxtrans :最大
查看標准塊大小
> show parameter block