Decode360's Blog

          業精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
            397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
          控制文件相關操作
          ?
          ??? 接著來介紹一下關于Controlfile的操作問題,這部分內容需要好好記住,因為控制文件損壞之后的影響是比較嚴重的,如果沒有備份,最后只能手動修復,這樣出錯的可能性就會大大增加。好了,看一下相關操作。
          ?
          ?
          一、CREATE CONTROLFILE錯誤
          ?
          ??? 1、檢查文件差異
          ?
          ??? 創建新的控制文件之后會檢查數據字典和控制文件之間的矛盾,以檢查丟失或多余的文件。
          ?
          ??? 丟失:
          ??????? 若數據字典中存在某數據文件,而控制文件中沒有,則Oracle在控制文件中創建一個名為MISSINGnnn的占位符入口,表示作為脫機并需要介質恢復的標志。可以通過重命名MISSINGnnn來訪問MISSINGnnn對應的真正數據文件,但該文件必須是只讀或正常脫機的。
          ??????? 又因為數據文件需要介質恢復,而RESETLOGS的結果排除了介質恢復的可能,所以當使用了RESETLOGS子句時,必須撤銷包含數據文件的表空間。
          ?
          ??? 多余:
          ??????? 當控制文件記錄的數據文件不在數據字典中時,Oracle會從新的控制文件中刪除對數據文件的引用。
          ?
          ??? 注:無論是丟失還是多余,都會在相應實例的alert.log文件中包含一條解釋性消息。
          ?
          ??? 2、創建過程中的錯誤
          ?
          ??? 一般在創建新的控制文件后打開數據庫,可能會返回一下錯誤類型:
          ??? ORA-01173、ORA-01176、ORA-01177、ORA-01215、ORA-01216
          ?
          ??? 最大的可能是在在創建時有文件丟失或多余文件。
          ??? 此時應該找到備份的數據文件和聯機重做日志文件,覆蓋當前文件,并使用正確的CREATE CONTROLFILE語句重新創建。
          ?
          ?
          二、備份控制文件
          ?
          ??? 1、備份控制文件為二進制文件
          ?
          ??? ALTER DATABASE BACKUP CONTROLFILE TO '/oracle/backup/control.bkp';
          ?
          ??? 2、制作以后可以重新創建控制文件的SQL
          ?
          ??? ALTER DATABASE BACKUP CONTROLFILE TO TRACE;
          ?
          ??? 3、可以使用RMAN對控制文件進行備份
          ?
          ?
          三、恢復控制文件
          ?
          ??? 1、控制文件損壞
          ?
          ??? ①關閉實例 ②將未損壞的控制文件副本覆蓋已損壞文件 ③打開數據庫
          ?
          ??? 2、磁盤損壞
          ?
          ??? ①關閉實例 ②經未損壞控制文件副本復制到新磁盤空間 ③修改CONTROL_FILES參數 ④打開數據庫
          ?
          ??? 也可以先修改CONTROL_FILES參數,然后恢復控制文件,再把
          ?
          ?
          四、刪除控制文件
          ?
          ??? ① 關閉數據庫
          ??? 修改CONTROL_FILES參數
          ??? 啟動數據庫
          ??? 在磁盤上刪除相應CONTROLFILE文件
          ?
          ?
          五、控制文件信息
          ?
          ??? 通過一下視圖來查看控制文件信息:
          ?
          ??? V$CONTROLFILE:控制文件名稱
          ??? V$CONTROLFILE_RECORD_SECTION:控制文件記錄段信息
          ??? V$PARAMETER:初始化參數CONTROL_FILES的值
          ?
          ?
          ?
          posted on 2008-11-24 21:21 decode360 閱讀(138) 評論(0)  編輯  收藏 所屬分類: 08.DBA
          主站蜘蛛池模板: 加查县| 台南市| 衢州市| 兴文县| 曲靖市| 汾阳市| 阳谷县| 辽宁省| 连州市| 敖汉旗| 德江县| 富平县| 工布江达县| 剑河县| 湟源县| 台东县| 阿合奇县| 东光县| 三原县| 大竹县| 衢州市| 九台市| 客服| 紫阳县| 进贤县| 岳普湖县| 达尔| 安徽省| 泸定县| 东宁县| 古丈县| 阳泉市| 蕉岭县| 灵武市| 石城县| 驻马店市| 长顺县| 伽师县| 五常市| 广元市| 台江县|