表空間&資料檔案和控制檔案(zt)
資料庫、表空間和資料檔案是緊密相關的,它們的關係如下:
一個Oracle資料庫由一個或多個邏輯儲存單元——表空間構成,表空間儲存著資料庫中所有的資料;
Oracle資料庫中的每個表空間由一個或多個檔案組成,這些檔案就是資料檔案,它們是Oracle所在作業系統上的物理結構。
Oracle資料庫中的所有資料物理的儲存在資料檔案中。
除了普通表空間外,Oracle還有幾種特殊的表空間。系統表空間(SYSTEM表空間)、UNDO表空間(9i以前的回滾表空間)、臨時表空間。
系統表空間中除了儲存資料字典外還儲存所有的儲存過程、函式、包、觸發器和物件。
UNDO表空間用於儲存被DML語句影響的記錄的原始狀態,以便在事務失敗的時候可以進行回滾。
當大的排序操作發生時,排序無法在記憶體中完成,這是會使用臨時表空間。
Oracle推薦使用多個表空間,使用多個表空間的優點:
控制資料庫的磁碟空間分配;
為資料庫使用者指定不同的配額(QUOTA);
透過設定單獨的表空間ONLINE或OFFLINE來控制資料的可用性;
執行部分資料庫的備份和恢復操作;
將資料儲存分佈到多個物理裝置來提高效能。
Oracle支援兩種管理空間方式的表空間:
本地管理表空間(Locally managed tablespace):透過表空間頭部的BITMAP來管理空閒空間。
資料字典管理表空間(Dictionary managed tablespace):透過資料字典中的表來管理空閒空間。
對於本地管理表空間還可以選擇如何管理段內的空閒空間:
AUTO方式:透過BITMAP管理,這種方式又叫做automatic segment-space management。
MANUAL方式:透過FREELISTS來管理。
Oracle為了更好的支援傳輸表空間,Oralce從9i開始支援表空間的BLOCK_SIZE和資料庫的db_block_size的設定不同。
表空間可以設定為ONLINE和OFFLINE,OFFLINE的表空間無法進行訪問。透過對單獨表空間的ONLINE和OFFLINE,可以減少對系統的影響。
表空間可以設定為READ ONLY和READ WRITE兩種狀態,只讀的表空間不可以進行鎖操作,因此甚至可以放到只讀裝置上如CDROM。
資料檔案是作業系統上的物理檔案。一個表空間中包含一個或多個資料檔案。在Oracle9i以後,組成臨時表空間的檔案和普通資料檔案區分開,叫做臨時檔案。
臨時檔案具有以下特性:
臨時檔案總是設定為NOLOGGING模式;
臨時檔案不能設定為READ ONLY;
臨時檔案不能重新命名;
不能透過ALTER DATABASE語句建立臨時檔案;
當建立建立臨時檔案時,Oracle只是分配空間,沒有進行初始化,這樣可以加快建立臨時檔案的速度;
臨時檔案的查詢透過這兩個檢視:V$TEMPFILE和DBA_TEMP_FILES。
控制檔案中儲存著下列資訊:資料庫名稱、資料庫建立的時間、所有資料檔案和重做日誌檔案的名稱和位置、表空間資訊、OFFLINE資料檔案資訊、重做日誌歷史資訊、歸檔日誌檔案資訊、備份集資訊、備份資料檔案和重做日誌檔案資訊、資料檔案複製資訊、當前重做日誌序號和檢查點資訊。
當資料檔案和聯機重做日誌檔案發生變化時,都會將資訊寫道控制檔案中。Oracle記錄這些資訊是為了:
在啟動時,Oracle可以找到並開啟資料檔案和重做日誌檔案;
Oracle可以確定資料庫恢復是否需要或是否可能。
控制檔案還記錄CHECKPOINT資訊,用於在恢復時指定哪些恢復操作是沒有必要的,它們已經寫到資料檔案中了。
由於控制檔案的重要性,因此一定要建立多個控制檔案,並放到不同的物理磁碟上,同時注意對控制檔案的備份。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-84690/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 表空間和資料檔案管理
- 移動資料檔案、系統表空間檔案、臨時表空間檔案
- RMAN恢復表空間,資料檔案,歸檔檔案,控制檔案等介紹
- 新建的表空間(或資料檔案)丟失以及控制檔案丟失,有新建表空間(或資料檔案)前的控制文
- 【學習日記】oracle之表空間、資料檔案、控制檔案Oracle
- 表空間和資料檔案的管理
- 重新命名資料檔案和表空間
- Oracle 表空間與資料檔案Oracle
- oracle 資料檔案表空間管理Oracle
- oracle基礎管理——表空間和資料檔案Oracle
- [Oracle 10g] 大檔案表空間(zt)Oracle 10g
- oracle 表空間 資料檔案 筆記Oracle筆記
- 資料檔案,表空間的移動
- 表空間資料檔案故障處理
- 線上遷移表空間資料檔案
- Oracle 表空間資料檔案遷移Oracle
- 表空間新增資料檔案的疑惑
- 【TABLESPACE】通過重建控制檔案調整表空間資料檔案位置及名稱
- 不完全恢復(資料檔案備份--新建表空間--控制檔案備份--日誌歸檔檔案)
- MySQL innodb共享表空間新增表空間資料檔案方法MySql
- 基礎知識5——表空間和資料檔案
- 9.管理表空間和資料檔案(筆記)筆記
- 刪除表空間和表空間包含的檔案
- sysaux表空間檔案損壞的處理(zt)UX
- 表空間中有資料也可以壓縮表空間(資料檔案)大小
- 大檔案表空間
- 表空間offline,資料檔案offline 的區別(ZT)
- oracle 普通表空間資料檔案壞塊Oracle
- 表空間(資料檔案shrink)收縮示例
- oracle 回收表空間的資料檔案大小Oracle
- 誤刪oracle資料庫表空間檔案Oracle資料庫
- InnoDB資料表空間檔案平滑遷移
- 錯誤新增表空間的資料檔案
- 含read only表空間的資料庫的控制檔案重建資料庫
- Oracle 表空間增加檔案Oracle
- MySQL InnoDB系統表空間資料檔案配置MySql
- ORACLE表空間、資料檔案離線問題Oracle
- (個人)Oracle 表空間資料檔案遷移(轉)Oracle