二、ORACLE 數據庫
ORACLE數據庫的組成——物理操作系統文件的集合。主要包括以下幾種。
1、控制文件(參數文件init.ora記錄了控制文件的位置)
控制文件包括如下主要信息
·數據庫的名字,檢查點信息,數據庫創建的時間戳
·所有的數據文件,聯機日志文件,歸檔日志文件信息
·備份信息等
有了這些信息,Oracle就知道那些文件是數據文件,現在的重做日志文件是哪些,這些都是系統啟動和運行的基本條件,所以他是Oracle運行的根本。如果沒有控制文件系統是不可能啟動的。控制文件是非常重要的,一般采用多個鏡相復制來保護控制文件,或采用RAID來保護控制文件。控制文件的丟失,將使數據庫的恢復變的很復雜。控制文件信息可以從V$Controlfile中查詢獲得。
2、數據文件(數據文件的詳細信息記載在控制文件中)
可以通過如下方式查看數據文件
SQL> select name from v$datafile;
NAME
---------------------------------------------
/u05/dbf/PROD/system_01.dbf
/u06/dbf/PROD/temp_01.dbf
/u04/dbf/PROD/users_01.dbf
/u09/dbf/PROD/rbs_01.dbf
/u06/dbf/PROD/applsys_indx_01.dbf
/u05/dbf/PROD/applsys_data_01.dbf
從以上可以看出,數據文件大致可以分為以下幾類:
i. 系統數據文件(system_01.dbf)
存放系統表和數據字典,一般不放用戶的數據,但是用戶腳本,如過程,函數,包等卻是保存在數據字典中的。
名詞解釋:數據字典
數據字典是一些系統表或視圖,他存放系統的信息,他包括數據庫版本,數據文件信息,表與索引等段信息,系統的運行狀態等各種和系統有關的信息和用戶腳本信息。數據庫管理員可以通過對數據字典的查詢,就可以了解到Oracle的運行狀態。
ii. 回滾段文件(rbs_01.dbf)
如果數據庫進行對數據的修改,那么就必須使用回滾段,回滾段是用來臨時存放修改前的數據(Before Image)。回滾段通常都放在一個單獨的表空間上(回滾表空間),避免表空間碎片化,這個表空間包含的數據文件就是回滾數據文件。
iii. 臨時數據文件(temp_01.dbf)
主要存放用戶的排序等臨時數據,與回滾段相似,臨時段也容易引起表空間碎片化,而且沒有辦法在一個永久表空間上開辟臨時段,所以就必須有一個臨時表空間,它所包含的數據文件就是臨時數據文件,主要用于不能在內存上進行的排序操作。我們必須為用戶指定一個臨時表空間。
iv. 用戶數據文件(/applsys_data_01.dbf ,applsys_indx_01.dbf)
存放用戶數據,這里列舉了兩類常見的用戶型數據,一般數據和索引數據,一般來說,如果條件許可的話,可以考慮放在不同的磁盤上。
3、重做日志文件(聯機重做日志)
用戶對數據庫進行的任何操作都會記錄在重做日志文件。在了解重做日志之前必須了解重做日志的兩個概念,重做日志組和重做日志組成員(Member),一個數據庫中至少要有兩個日志組文件,一組寫完后再寫另一組,即輪流寫。每個日志組中至少有一個日志成員,一個日志組中的多個日志成員是鏡相關系,有利于日志文件的保護,因為日志文件的損壞,特別是當前聯機日志的損壞,對數據庫的影響是巨大的。
聯機日志組的交換過程叫做切換,需要特別注意的是,日志切換在一個優化效果不好的數據庫中會引起臨時的“掛起”。掛起大致有兩種情況:
在歸檔情況下,需要歸檔的日志來不及歸檔,而聯機日志又需要被重新利用
檢查點事件還沒有完成(日志切換引起檢查點),而聯機日志需要被重新利用
解決這種問題的常用手段是:
i.增加日志組
ii.增大日志文件成員大小
通過v$log可以查看日志組,v$logfile可以查看具體的成員文件。
4、歸檔日志文件
Oracle可以運行在兩種模式之中,歸檔模式和不歸檔模式。如果不用歸檔模式,當然,你就不會有歸檔日志,但是,你的系統將不會是一個實用系統,特別是不能用于生產系統,因為你可能會丟失數據。但是在歸檔模式中,為了保存用戶的所有修改,在重做日志文件切換后和被覆蓋之間系統將他們另外保存成一組連續的文件系列,該文件系列就是歸檔日志文件。
有人或許會說,歸檔日志文件占領我大量的硬盤空間,其實,具體想一想,你是愿意浪費一點磁盤空間來保護你的數據,還是愿意丟失你的數據呢?顯而義見,我們需要保證我們的數據的安全性。其實,歸檔并不是一直占領你的磁盤空間,你可以把她備份到磁帶上,或則刪除上一次完整備份前的所有日志文件。
5、初始化參數文件
initSID.ora或init.ora文件,因為版本的不一樣,其位置也可能會不一樣。在8i中,通常位于$ORACLE_HOME/admin//Pfile下初始化文件記載了許多數據庫的啟動參數,如內存,控制文件,進程數等,在數據庫啟動的時候加載(Nomount時加載),初始化文件記錄了很多重要參數,對數據庫的性能影響很大,如果不是很了解,不要輕易亂改寫,否則會引起數據庫性能下降。
6、其他文件
i . 密碼文件
用于Oracle 的具有sysdba權限用戶的認證.
ii. 日志文件
·報警日志文件(alert.log或alrt.ora)
記錄數據庫啟動,關閉和一些重要的出錯信息。數據庫管理員應該經常檢查這個文件,并對出現的問題作出即使的反應。你可以通過以下SQL 找到他的路徑select value from v$PARAMETER where name ="background_dump_dest";
·后臺或用戶跟蹤文件
系統進程或用戶進程出錯前寫入的信息,一般不可能讀懂,可以通過ORACLE的TKPROF工具轉化為可以讀懂的格式。對于系統進程產生的跟蹤文件與報警日志文件的路徑一樣,用戶跟蹤文件的路徑,你可以通過以下SQL找到他的路徑select value from v$PARAMETER where name ="user_dump_dest"。
數據庫恢復之ORACLE體系結構內容基本完結,希望對數據恢復的你有所啟發。
首先我們先啟動EasyRecovery軟件,點擊左邊列表中的數據修復。 數據修復里面有六個選項...
日立移動硬盤打不開怎么辦,日立移動硬盤打不開的解決方法,日立移動硬盤故障解決
大家都知道, 自從谷歌撤出北京辦事處后, 國內訪問谷歌中國的網站時, 網站就會自動連接...
有效保護個人隱私的十件最簡單的事
虛擬機中存儲的數據量迅猛增長,形成了難以維系的局面。這會導致備份窗口遭到破壞、前端...
系統狀態數據包括下面的這些:啟動文件,包括系統文件;在Windows文件保護下的文件;注冊...
隨著電腦在人們工作和生活中的逐步普及,越來越多的數據存在了電腦硬盤中。但相關統計卻...