熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Oracle >> 正文

Oracle數據庫的物理存儲結構之控制文件

2013-11-13 16:08:09  來源: Oracle 

  數據庫控制文件(control file)是一個很小的二進制文件它維護者數據庫的全局物理結構用以支持數據庫成功的啟動和運行創建數據庫時同時就提供了與之對應的控制文件在數據庫使用過程中Oracle不斷的更新控制文件所以只要數據庫是打開的控制文件就必須處於可寫狀態如果猶豫某些原因控制文件不能被訪問那麼數據庫也就不能正常的工作了

  每一個控制文件只能與一個Oracle數據庫相關聯

  控制文件包含了數據庫實例的啟動和正常操作時訪問數據庫所需的關於數據庫的信息控制文件的內容只有Oralce可以修改數據庫管理員和用戶都不能對其進行編輯

  控制文件包含了以下信息

  數據庫名稱

  數據庫創建的時間戳

  相關的數據文件重演日志文件的名稱和位置

  表空間信息

  數據文件脫機范圍

  日志歷史

  歸檔日志信息

  備份組和備份塊信息

  備份數據文件和重演日志信息

  數據文件拷貝信息

  當前日志序列數

  檢查點(checkpoint)信息

  數據庫名稱和時間戳源自數據庫創建之時數據庫名稱或是來自DB_NAME初始化從參數或者來自Cteate Database語句使用的名稱

  每當數據文件或重演日志文件被添加內容重新命名或者直接從數據庫刪除時控制文件都要進行更新以反應物理結構的變化記錄下這些變化後Oracle就可以

  在數據庫啟動的時候能夠確定並打開數據文件和重演日子文件

  在必須要恢復數據庫的時候能夠確定哪些文件是必須的哪些文件是可用的

  PS如果數據庫的物理結構發生了改變(使用了Alert Database語句)用戶應該立刻備份控制文件

  控制文件還記錄了關於檢查點的信息檢查點進程(CKPT)就會在控制文件裡記錄重演日志文件的檢查點位置信息這些信息用於數據庫的恢復過程告訴數據庫在這一點之前的已經記錄下的重演條目不必進行恢復因為它們已經被寫入數據文件了

  由於控制文件對數據庫的至關重要所以聯機存儲著多個副本這些文件一般存儲在各個不同的磁盤上以便將因磁盤試下哦引起的潛在危險降至最低程度Oracle支持對同一個數據庫並發的打開書寫多個相同的控制文件通過為一個數據庫在不同的磁盤上保存多個控制文件可以幼小的降低對於控制文件可能發生的單點失敗例如包含一個控制文件的磁盤崩潰了如果Oracle試圖訪問這個被破壞的文件當前實例就會失敗但是如果在不同的磁盤上保存了當前控制文件的復件就可以重啟一個實例而無需進行數據庫恢復

  如果一個數據庫所有的控制文件在操作的時候都丟失了那麼數據庫實例就會失敗必須要進行介質恢復(media recover)但是介質恢復必須要使用一個稍微舊一點的控制文件的備份因為當前的控制文件備份不可用所以為了保護控制文件必須要注意一下幾個方面

  每一個數據庫都要使用多路復制的控制文件

  把每一個控制文件的復件保存在不同的物理磁盤上

  使用操作系統的鏡像機制

  監控備份

  在SQL*PLUS中查詢控制文件

  select name from V$control_file


From:http://tw.wingwit.com/Article/program/Oracle/201311/17873.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.