tablespace 大檔案,undo,temp tablespace

dotaddjj發表於2011-09-13

大檔案表空間:

大檔案表空間增強了oracle資料庫的儲存能力,一個小檔案表空間最多可以包含1024datafile,大檔案表空間只能包含一個datafile,大檔案表空間最大容量是小資料檔案的1024倍。大檔案表空間和小檔案表空間的最大容量是相同的,但是在檔案管理方面減少了對資料檔案的管理工作。

使用大檔案表空間替代傳統的表空間,資料庫open checkpoint以及dbwr程式的效能會得到提高,但是增大資料檔案的容量可能增加備份和恢復時間。

System表空間是儲存pl/sql程式結構,包括procedure function package trigger等,資料庫開啟後就必須將system表空間聯機。如果system表空間是本地管理的,那麼其餘的tablespace都必須是本地管理,也就無法建立字典管理的tablespace了。

oracle 10g中,Sysauxsystem表空間的一個輔助性表空間。Oracle中很多元件預設儲存在sysaux表空間中。Sysaux用來儲存所有不儲存在system表空間的資料後設資料,不允許droprename sysaux表空間。Sysaux表空間不支援也移動表空間功能。

撤銷表空間只儲存撤銷段,無法在撤銷表空間中建立段。如果例項沒有分配執行撤銷表空間,那麼事務將使用系統的撤銷段。當undo tablespace正在被instance使用或者包含了事務所需的撤銷資訊,不能移除。

替換預設的undo tablespace:首先create一個undo tablespace,然後alter system set undo_tablespace=’’ scope=both 這樣就重新建立了一個undo tablespace並讓其儲存後續事務的回滾段資訊。

既然提到了undo tablespace,就有flashback query,閃回查詢正是利用undo tablespace的回滾段資訊來實現的,當然undo tablespace必須是自動回滾段管理。

自動回滾段管理需要設定兩個引數一個是undo_managementundo_tablespace,在oracle9Iundo_management預設的是autoundo_tablespace是預設的undo tablespace,只要設定這兩個引數oracle就回採取自動管理撤銷表空間。

閃回查詢:

select * from test01 as of timestamp to_timestamp(‘2011-9-13 10:00:00’,’yyyy-mm-dd hh24:mi:ss’)

回滾段的保留undo_retention:

flashback query正是利用undo tablespace來實現的。其中引數undo_retention是保留回滾段資訊的時間,但是並不是回滾段保留一定會是undo_retention,當回滾段不足時新事物會自動覆蓋已提交的事務的資料,而不會管這些資料是否達到了undo_retention;當然如果超過undo_retention的限制,回滾段會被標記為可重用,不過undo tablespace足夠大,事務交替不是很頻繁,即使超過undo_retention的限制回滾段的資料可能還是存在。

如果強制執行該回滾段在undo_retention限制內有效。

Alter tablespace undotbs1 retention guarantee

臨時表空間:

如果system是本地管理的,oracle會要求建立預設的temporary tablespace,如果是字典管理且沒有定義臨時表空間,會使用system表空間作為臨時表空間。

替換預設的臨時表空間為temp02

Create temporary tablespace temp02 tempfile ‘’ size 50M

Alter database temporary tablespace temp02

上述過程和替換default tablespace基本一樣。

表空間離線,聯機。

表空間離線或聯機的資訊儲存在system表空間的資料字典中,在資料庫開啟時offline的表空間下次啟動時依然是offline狀態,當某些錯誤發生時,oracle會自動地將祥光的聯機表空間切換到離線狀態,dbwn程式往資料檔案多次失敗後,oracle就會將此表空間切換到離線狀態。

排序使用的臨時表空間

使用專用的臨時表空間排序,能解決頻繁的排序空間分配與回收而造成的空間管理,一個sql語句可以使用多個臨時表空間排序。

排序段

臨時表空間與使用者用於建立臨時段的表空間不同,臨時段可以在任何表空間中,臨時表空間中不能儲存永久方案物件,排序段sort segment是多個排序操作共享的段。當使用多重排序時,且所需空間超過pga的記憶體區域時,使用臨時表空間有助於提升效能。

[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25362835/viewspace-1055012/,如需轉載,請註明出處,否則將追究法律責任。

相關文章