管理oracle控制檔案

2021-09-30 02:38:20 字數 1585 閱讀 5008

每乙個oracle資料庫都有乙個控制檔案。控制檔案是乙個小型的二進位制檔案,可以記錄資料庫的物理結構,包含以下的內容:資料庫名稱、相關資料檔案和聯機重做日誌檔案的名稱和位置、資料庫建立的時標、當前日誌的序號、檢驗點資訊。

無論何時開啟資料庫,控制檔案必須能夠由oracle資料庫伺服器寫入內容。沒有控制檔案,資料庫就不能裝載,且很難恢復。oracle資料庫控制檔案在資料庫建立的同時建立。

使用資料庫初始化引數檔案中的初始化引數control_files可以指定控制檔名,可以通過select * from v$parameter where name='control_files'語句來檢視control_files的值。資料庫例項啟動過程將識別和開啟所有列出的檔案。

每乙個oracle資料庫都應該至少有兩個控制檔案,它們分別儲存在不同的磁碟上。若因為磁碟失敗的原因導致控制檔案損壞,那麼就必須關閉相關的例項。一旦修理好磁碟驅動器,可以使用另一磁碟上儲存完好的控制檔案或者副本來恢復損壞的控制檔案,繼而重新啟動資料庫例項。

備份控制檔案。使用alter database backup controlfile語句可以備份控制檔案,有兩種可以選擇的方法:1、使用以下語句來將控制檔案備份為二進位制檔案 alter database backup controlfile to 'oracle/backup/control.bkp'。2、製作以後可以用於重新建立控制檔案的sql語句:alter database backup controlfile to trace。這個命令將sql指令碼寫入資料庫的跟蹤檔案,在這個跟蹤檔案中可以找到這個sql指令碼並對指令碼進行編輯,以便產生新的控制檔案。

刪除控制檔案。步驟:1、關閉資料庫。2、編輯資料庫初始化引數檔案中的初始化引數control_files,以便刪除舊的控制檔名稱。3、重新啟動資料庫例項。

以下的資料庫檢視顯示有關控制檔案的資訊。

v$controlfile                   列出控制檔案的名稱

v$controlfile_record_section    顯示有關控制檔案記錄段的資訊

v$parameter                     顯示初始化引數control_files指定的控制檔名稱

附:oracle入門小知識

乙個表空間只能屬於乙個資料庫  

每個資料庫最少有乙個控制檔案(建議3個,分別放在不同的磁碟上)  

每個資料庫最少有乙個表空間(system表空間)  

建立system表空間的目的是盡量將目的相同的表存放在一起,以提高使用效率,只應存放資料字典  

每個資料庫最少有兩個聯機日誌組,每組最少乙個聯機日誌檔案  

乙個資料檔案只能屬於乙個表空間  

乙個資料檔案一旦被加入到乙個表空間中,就不能再從這個表空間中移走,也不能再加入到其他表空間中  

建立新的表空間需要建立新的資料檔案  

commit後,資料不一定立即寫盤(資料檔案)  

乙個事務即使不被提交,也會被寫入到重做日誌中。  

oracle server可以同時啟動多個資料庫  

一套作業系統上可以安裝多個版本的oracle資料庫系統(unix可以,nt不可以??)

一套oracle資料庫系統中可以有多個oracle資料庫及其相對應的例項

oracle控制檔案管理

oracle資料庫通過控制檔案保持資料庫的完整性,一旦控制檔案被破壞資料庫將無法啟動,因此建議採用多路控制檔案或者備份控制檔案的方法。控制檔案是資料庫建立的時候自動生成的二進位制檔案,只能通過例項進行修改,如果手動修改的話會造成控制檔案與物理資訊不符合,從而導致資料庫不能正常工作。oracle資料庫...

oracle管理控制檔案

檢視資料庫資訊 select from v database 檢視日誌檔案 select from v logfile 檢視那日誌組 select from v log 檢視備份資訊及修改備份狀態 select from v backup alter tablespace users begin b...

ORACLE 管理控制檔案

在oracle中,控制檔案極其重要,如果該檔案損壞並在沒有備份的情況下,資料庫將無法啟動,裡面的資料也將無法讀取恢復,一般情況下,對資料庫配置好了以後備份控制檔案 1.檢視控制檔案 sql select name from v controlfile 如果發生錯誤,檢查錯誤資訊如 opt oracl...