介質恢復,即磁碟或作業系統檔案損壞的恢復-非RMAN方法

還不算暈發表於2013-10-27

介質恢復,即磁碟或作業系統檔案損壞的恢復-非RMAN方法

1,聯機恢復時將要恢復的檔案或表空間設為離線 offline,不包括系統表空間或活動UNDO表空間。

2,然後修復restore將資料帶回到備份的時間點,即將備份的作業系統檔案複製到資料庫原位置,僅修復損壞或丟失的作業系統檔案,不修復其它任何檔案。

3,恢復recover從備份到資料檔案崩潰這段時間內提交的資料,包括兩個步驟:前滾和回滾:

前滾 rollforward 將從備份到系統崩潰這段時間內所有提交的資料由歸檔日誌檔案和聯機重做日誌中還原成資料檔案所需的資料塊。

回滾 transactionrecovery     系統使用回滾資料塊回滾未提交的資料。SQLPLUS RECOVER命令

4,最後,資料庫完全恢復。

名詞:

事務回滾transaction rollback 程式執行rollback操作

事務修復transaction recovery rollback是recovery一部分

讀取一致readconsistency 根據SCN systemchange number 來保證讀取資料的一致性。

 

歸檔模式下可以進行資料庫完全恢復。

不完全恢復是將資料庫恢復到系統崩潰前某個時間點。

 

歸檔模式下資料庫全恢復優點:

恢復時不必關閉資料庫,對24*7執行的資料庫有用。

所有提交的資料都可以恢復,對金融類交易系統很有用。

僅需要修復損壞或丟失的資料檔案,其它備份檔案出了問題也不影響資料庫恢復,更可靠。

恢復時間=將損失或丟失資料檔案備份複製回資料庫+使用歸檔日誌檔案或重做日誌檔案恢復提交的資料所用時間

 

歸檔模式加大系統記憶體和CPU開銷,消耗一些硬碟空間,並且必須保證所有歸檔日誌檔案完好,如現在歸檔檔案序列號111,但是100號歸檔檔案損壞,ORACLE只能恢復到100號之前。

 

 recover命令三個,命令前可以加alter database,也可以不加。[automatic]可選,表示自動搜尋和恢復歸檔日誌檔案及重做日誌檔案中提交的資料。

recover [automatic] database; 只能在資料庫載入MOUNT狀態使用

recover [automatic] tablespace "表空間名"|"表空間名"   資料庫OPEN狀態使用

recover [automatic] datafile "資料檔名"|"資料檔名"

ALTER SYSTEM SET undo_retention=10800SCOPE=BOTH;    undo_retention引數設定,預設900秒。UNDO_RETENTION引數用以控制事務提交以後undo資訊保留的時間。

SQL> select tablespace_name,status fromdba_tablespaces;

TABLESPACE_NAME      STATUS

-------------------- ---------

SYSTEM               ONLINE

SYSAUX               ONLINE

UNDOTBS1             ONLINE

TEMP                 ONLINE

USERS                ONLINE

SQL> select file#,status fromv$datafile;

    FILE# STATUS

---------- -------

        1 SYSTEM

        2 ONLINE

        3 ONLINE

         4 ONLINE

SQL> select * from v$recover_file;

未選定行


ORACLE恢復時自動獲取所需歸檔日誌檔案的辦法

1:    recoverdatafile 6 然後輸入auto

2.recover automatic datafile 6

3,set autorecover on 然後recover datafile 6

相關文章