<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Decode360's Blog

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

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
      397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
    Oracle備份/恢復案例06——ControlFile恢復

    一、損壞單個控制文件

    損壞單個控制文件是比較容易恢復的,因為一般的數據庫系統,控制文件都不是一個,而且所有的控制文件都互為鏡相,只要拷貝一個好的控制文件替換壞的控制文件就可以了。

    ?
    1、控制文件損壞,最典型的就是啟動數據庫出錯,不能mount數據庫

    SQL>startup
    ORA-00205: error in identifying controlfile, check alert log for more info

    查看報警日志文件,有如下信息

    ORA-00202: controlfile: 'D:\oracle\oradata\dodo\control01.ctl'
    ORA-27046: file size is not a multiple of logical block size
    OSD-04012: 文件大小不匹配 (OS 1613808)

    2、停止數據庫

    SQL>shutdown immediate;

    3、拷貝一個好的控制文件替換壞的控制文件或修改init.ora中的控制文件參數,取消這個壞的控制文件。

    4、重新啟動數據

    SQL>startup;
    ?

    說明:

    1、損失單個控制文件是比較簡單的,因為數據庫中所有的控制文件都是鏡相的,只需要簡單的拷貝一個好的就可以了
    2、建議鏡相控制文件在不同的磁盤上
    3、建議多做控制文件的備份,長期保留一份由alter database backup controlfile to trace產生的控制文件的文本備份
    ?
    ?

    二、損壞全部控制文件
    ?
    損壞多個控制文件,或者人為的刪除了所有的控制文件,通過控制文件的復制已經不能解決問題,這個時候需要重新建立控制文件。
    同時注意alter database backup control file to trace可以產生一個控制文件的文本備份。
    以下是詳細重新創建控制文件的步驟
    ?
    1、關閉數據庫

    SQL>shutdown immediate;

    2、刪除所有控制文件,模擬控制文件的丟失

    3、啟動數據庫,出現錯誤,并不能啟動到mount下

    SQL>startup
    ORA-00205: error in identifying controlfile, check alert log for more info

    查看報警日志文件,有如下信息

    ORA-00202: controlfile: 'D:\oracle\oradata\dodo\control01.ctl'
    ORA-27041: unable to open file
    OSD-04002: 無法打開文件
    O/S-Error: (OS 2) 系統找不到指定的文件。

    4、關閉數據庫

    SQL>shutdown immediate;

    5、在internal或sys下運行如下創建控制文件的腳本,注意完整列出聯機日志或數據文件的路徑,或修改由alter database backup control file to trace備份控制文件時產生的腳本,去掉多余的注釋即可。

    STARTUP NOMOUNT
    CREATE CONTROLFILE REUSE DATABASE "DODO" NORESETLOGS? ARCHIVELOG
    -- SET STANDBY TO MAXIMIZE PERFORMANCE
    ??? MAXLOGFILES 5
    ??? MAXLOGMEMBERS 3
    ??? MAXDATAFILES 100
    ??? MAXINSTANCES 1
    ??? MAXLOGHISTORY 226
    LOGFILE
    ? GROUP 1 'D:\ORACLE\ORADATA\DODO\REDO01.LOG'? SIZE 100M,
    ? GROUP 2 'D:\ORACLE\ORADATA\DODO\REDO02.LOG'? SIZE 100M,
    ? GROUP 3 'D:\ORACLE\ORADATA\DODO\REDO03.LOG'? SIZE 100M
    -- STANDBY LOGFILE
    DATAFILE
    ? 'D:\ORACLE\ORADATA\DODO\SYSTEM01.DBF',
    ? 'D:\ORACLE\ORADATA\DODO\UNDOTBS01.DBF',
    ? 'D:\ORACLE\ORADATA\DODO\DRSYS01.DBF',
    ? 'D:\ORACLE\ORADATA\DODO\INDX01.DBF',
    ? 'D:\ORACLE\ORADATA\DODO\TOOLS01.DBF',
    ? 'D:\ORACLE\ORADATA\DODO\USERS01.DBF',
    ? 'D:\ORACLE\ORADATA\DODO\XDB01.DBF'
    CHARACTER SET ZHS16GBK;
    -- Recovery is required if any of the datafiles are restored backups,
    -- or if the last shutdown was not normal or immediate.
    RECOVER DATABASE;
    --if the last shutdown was not normal or immediate
    --noarchive
    -- RECOVER DATABASE UNTIL CANCELUSING BACKUP CONTROLFILE
    --archive
    -- RECOVER DATABASE USING BACKUP CONTROLFILE UNTIL CANCEL
    -- Database can now be opened normally.
    ALTER DATABASE OPEN;
    --if recover database until cancel
    --ALTER DATABASE OPEN RESETLOGS;

    6、如果沒有錯誤,數據庫將啟動到open狀態下。
    ?

    說明:
    1、重建控制文件用于恢復全部數據文件的損壞,需要注意其書寫的正確性,保證包含了所有的數據文件與聯機日志.
    2、經常有這樣一種情況,因為一個磁盤損壞,我們不能再恢復(store)數據文件到這個磁盤,因此在store到另外一個盤的時候,我們就必須重新創建控制文件,用于識別這個新的數據文件
    posted on 2008-12-19 22:11 decode360 閱讀(559) 評論(0)  編輯  收藏 所屬分類: 09.Recover

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 国产偷v国产偷v亚洲高清| 久久久久国色av免费看| 亚洲春色另类小说| 国产国拍精品亚洲AV片| 国产成人精品高清免费| 国产妇乱子伦视频免费| 午夜免费福利片观看| g0g0人体全免费高清大胆视频| 亚洲午夜成人精品无码色欲| 精品亚洲A∨无码一区二区三区| 狠狠综合久久综合88亚洲| 四虎国产精品免费久久影院| 嫩草视频在线免费观看| 2021国产精品成人免费视频| 久久国产色AV免费观看| 国产成人精品一区二区三区免费| 一个人看的www在线免费视频| 蜜臀亚洲AV无码精品国产午夜.| 日韩亚洲人成在线| 亚洲综合欧美色五月俺也去| 国产精品亚洲综合五月天| 亚洲人成7777影视在线观看| 亚洲精品美女久久久久| 亚洲综合亚洲国产尤物| 亚洲成年人电影网站| 亚洲欧洲日本天天堂在线观看| 久久久亚洲欧洲日产国码是AV| 亚洲国产精品婷婷久久| 亚洲av日韩av无码黑人| 亚洲电影免费在线观看| 亚洲视频免费在线观看| 亚洲网红精品大秀在线观看 | WWW国产亚洲精品久久麻豆| 亚洲日韩国产二区无码| 亚洲精品伦理熟女国产一区二区| 亚洲色欲色欱wwW在线| 亚洲国产精品99久久久久久| 国产精品亚洲一区二区三区久久| 黄色免费网址在线观看| 成人妇女免费播放久久久| a毛片全部播放免费视频完整18|