需求:
需要整理現場用戶創建的表空間以及其存儲數據,進行規范化管理。在整理用戶現場建立的表空間時,需要排除掉非用戶創建的表空間,所有首先需要那些表空間是用戶創建的,那些是Oracle自帶的。
本機測試建立一個新庫,發現自帶表空間如下:

下面對每一個表空間進行簡單說明(部分內容引自網絡):
1、SYSAUX表空間
SYSAUX表空間在Oracle Database 10g中引入,作為SYSTEM表空間的輔助表空間.以前一些使用獨立表空間或系統表空間的數據庫組件現在在SYSAUX表空間中創建.SYSAUX 表空間存放一些其他的 metadata 組件,如 OEM,Streams 等會默認存放在 SYSAUX 表空間里。通過分離這些組件和功能,SYSTEM表空間的負荷得以減輕.反復創建一些相關對象及組件引起SYSTEM表空間的碎片問題得以避免。
2、SYSTEM表空間
SYSTEM表空間是Oracle創建數據庫時候自動創建的,每個Oracle數據庫都會有SYSTEM表空間,而且SYSTEM表空間總是要保持在聯機模式下,因為其包含了數據庫運行所要求的基本信息,如:數據字典、聯機求助機制、所有回退段、臨時段和自舉段、所有的用戶數據庫實體、其它ORACLE軟件產品要求的表等等。
3、TEMP表空間
臨時表空間用來管理數據庫排序操作以及用于存儲臨時表、中間排序結果等臨時對象,當ORACLE里需要用到SORT的時候,并且當PGA中sort_area_size大小不夠時,將會把數據放入臨時表空間里進行排序。像數據庫中一些操作: CREATE INDEX、 ANALYZE、SELECT DISTINCT、ORDER BY、GROUP BY、 UNION ALL、 INTERSECT、MINUS、SORT-MERGE JOINS、HASH JOIN等都可能會用到臨時表空間。當操作完成后,系統會自動清理臨時表空間中的臨時對象,自動釋放臨時段。這里的釋放只是標記為空閑、可以重用,其實實質占用的磁盤空間并沒有真正釋放。這也是臨時表空間有時會不斷增大的原因。臨時表空間存儲大規模排序操作(小規模排序操作會直接在RAM里完成,大規模排序才需要磁盤排序Disk Sort)和散列操作的中間結果.它跟永久表空間不同的地方在于它由臨時數據文件(temporary files)組成的,而不是永久數據文件(datafiles)。臨時表空間不會存儲永久類型的對象,所以它不會也不需要備份。另外,對臨時數據文件的操作不產生redo日志,不過會生成undo日志。
4、UNDO表空間
UNDO表空間是Oracle特有的概念。undo表空間中會自動分配undo段,這些undo段用來保存事務中的DML語句的undo信息,也就是來保存數據在被修改之前的值。在rollback,實例恢復(前滾),一致性讀CR塊的構造時會使用到undo信息。由于undo的引入,從而Oracle的select語句實現一致性讀時,不需要任何鎖。undo表空間和其它表空間有很多類似的地方:undo數據塊也會被讀到buffer cache緩存起來,修改時也會產生redo log,數據也會寫回到undo表空間的磁盤上。所以崩潰后,undo塊的buffer cache也會恢復過來。
5、USERS表空間
創建用戶必須為其指定表空間,如果沒有顯性指定默認表空間,則指定為users表空間,此用戶所有信息都會放入到users表空間中。
總結
以上所述是小編給大家介紹的Oracle數據庫自帶表空間的詳細說明,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
您可能感興趣的文章:- 在Linux系統上同時監控多個Oracle數據庫表空間的方法
- Oracle數據庫中表空間的基本管理操作小結
- Oracle表空間數據庫文件收縮案例解析