Oracle UNDO 表空間的作用

一.表空間的概念

ORACLE數據庫被劃分成稱作爲表空間[1]  的邏輯區域——形成ORACLE數據庫的邏輯結構。一個ORACLE數據庫能夠有一個或多個表空間,而一個表空間則對應着一個或多個物理的數據庫文件。表空間是ORACLE數據庫恢復的最小單位,容納着許多數據庫實體,如表、視圖、索引、聚簇、回退段和臨時段等。
每個ORACLE數據庫均有SYSTEM表空間,這是數據庫創建時自動創建的。SYSTEM表空間必須總要保持聯機,因爲其包含着數據庫運行所要求的基本信息(關於整個數據庫的數據字典、聯機求助機制、所有回退段、臨時段和自舉段、所有的用戶數據庫實體、其它ORACLE軟件產品要求的表)。

clip_image002[4]

二.表空間的分類

永久表空間:存放永久性數據,如表,索引,存儲過程;

臨時表空間:由於Oracle工作時經常需要一些臨時的磁盤空間,這些空間主要用作查詢時帶有排序(Group by,Order by等)等算法所用,當用完後就立即釋放,對記錄在磁盤區的信息不再使用,因此叫臨時表空間。一般安裝之後只有一個TEMP臨時表空間。

UNDO表空間:在事務執行過程中,保存調整的鏡像。uNDO表空間是用於存儲DML操作的前鏡像數據,它是實例恢復,數據回滾,一致性查詢功能的重要組件

在某個事務啓動時,Oracle會爲其指派一個撤銷段。任何一個事務都只能受一個撤銷段保護,一個事務生成的撤銷數據無法被分配到多個撤銷段中。
  在某個事務更新表和索引數據塊時,回滾該變化所需的信息會被寫入指定撤銷表空間的數據塊。撤銷數據在提交後過期的事實意味着可以採用循環方式使用撤銷段。如果使用原有的、人工管理的回滾段,那麼調整的重要環節是控制具體事務分別受哪些回滾段保護

1.

查詢當前的

undo

表空間的大小,及系統可用空間大小

 

1.

查詢當前的

undo

表空間的大小,及系統可用空間大小

 

三.Oracle表空間作用
表空間的作用能幫助DBA用戶完成以下工作:
1.決定數據庫實體的空間分配;
2.設置數據庫用戶的空間份額;
3.控制數據庫部分數據的可用性;
4.分佈數據於不同的設備之間以改善性能;
5.備份和恢復數據。



查看錶空間:
SQL> select * from v$tablespace;
    TS# NAME INCLUDED_IN_DATABASE_BACKUP BIGFILE FLASHBACK_ON ENCRYPT_IN_BACKUP
6 6 INTERFACE YES NO YES
7 7 ODRSTAGE YES NO YES
2 1 SYSAUX YES NO YES
1 0 SYSTEM YES NO YES
5 3 TEMP NO NO YES
3 2 UNDOTBS1 YES NO YES
4 4 USERS YES NO YES


查看詳細數據文件:
SQL> select file_name,tablespace_name from dba_data_files;
    FILE_NAME TABLESPACE_NAME
1 /u02/oradata/odrq/users01.dbf USERS
2 /u02/oradata/odrq/undotbs01.dbf UNDOTBS1
3 /u02/oradata/odrq/sysaux01.dbf SYSAUX
4 /u02/oradata/odrq/system01.dbf SYSTEM
5 /u02/oradata/odrq/interface_01.dbf INTERFACE
6 /u02/oradata/odrq/odrstage_01.dbf ODRSTAGE
7 /u02/oradata/odrq/interface_02.dbf INTERFACE


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章