溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

基于控制文件的scn不完全恢復該怎么辦

發(fā)布時間:2021-11-30 15:26:21 來源:億速云 閱讀:232 作者:柒染 欄目:關(guān)系型數(shù)據(jù)庫

這篇文章將為大家詳細講解有關(guān)基于控制文件的scn不完全恢復該怎么辦,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

問題現(xiàn)象:

  1. SQL> alter database open resetlogs;

  2. alter database open resetlogs

  3. *

  4. ERROR at line 1:

  5. ORA-01152: file 1 was not restored from a sufficiently old backup

  6. ORA-01110: data file 1: '/DBSoft/oracle/oradata/woo/system01.dbf'


日志中報錯:

  1. alter database open

  2. Errors in file /DBSoft/oracle/diag/rdbms/woo/woo/trace/woo_ora_24956.trc:

  3. ORA-01589: must use RESETLOGS or NORESETLOGS option for database open

  4. ORA-1589 signalled during: alter database open...

  5. Sun Dec 24 05:44:45 2017

  6. Signalling error 1152 for datafile

  7. Signalling error 1152 for datafile

  8. Signalling error 1152 for datafile

  9. Signalling error 1152 for datafile

  10. Signalling error 1152 for datafile

  11. Checker run found 5 new persistent data failures

  12. Sun Dec 24 05:44:51 2017

  13. alter database open resetlogs

  14. Signalling error 1152 for datafile

  15. ORA-1152 signalled during: alter database open resetlogs...


問題分析:
做完recover database正要起庫,發(fā)現(xiàn)data file 1需要恢復,那么這個時候就應(yīng)該要想到需要做不完全恢復了。那么不完全恢復自然有四種,基于時間(time)恢復
  基于取消(cancel)恢復
  基于SCN(change)恢復
  基于備份控制文件(unsing backup controlfile)的恢復,那么接下來我們需要了解下,用那種方式最合適了。

查看scn信息:
查看數(shù)據(jù)文件頭部的scn信息:

  1. SQL> select checkpoint_change# from v$datafile_header;


  2. CHECKPOINT_CHANGE#

  3. ------------------

  4.        2247792

  5.        2247792

  6.        2247792

  7.        2247792

  8.        2247792


查看控制文件中記錄的scn頭部信息:

  1. SQL> select checkpoint_change# from v$datafile;


  2. CHECKPOINT_CHANGE#

  3. ------------------

  4.        2247974

  5.        2247974

  6.        2247974

  7.        2247974

  8.        2247974


      在這里我們可以很清楚的看到控制文件中記錄的scn信息比數(shù)據(jù)文件頭部記錄的scn信息更新,且所有數(shù)據(jù)文件頭部信息是一致的,由此可以快速得出,我們將數(shù)據(jù)庫恢復到數(shù)據(jù)文件的scn這樣數(shù)據(jù)庫就可以打開了。

做基于文件頭部的scn恢復:

  1. SQL> recover database until change 2247792;

  2. ORA-00283: recovery session canceled due to errors

  3. ORA-01610: recovery using the BACKUP CONTROLFILE option must be done


        提示需要使用控制文件來做基于scn的恢復。

使用控制文件來做基于scn的恢復:

  1. SQL> recover database until change 2247792 using backup controlfile;

  2. Media recovery complete.

  SQL> select * from v$recover_file


     FILE# ONLINE  ONLINE_ ERROR CHANGE# TIME
---------- ------- ------- ---------- ---------- ------------------
1 ONLINE  ONLINE 2247792 23-DEC-17
2 ONLINE  ONLINE 2247792 23-DEC-17
3 ONLINE  ONLINE 2247792 23-DEC-17
4 ONLINE  ONLINE 2247792 23-DEC-17
5 ONLINE  ONLINE 2247792 23-DEC-17


恢復完成之后,執(zhí)行open resetlogs:

  1. SQL> alter database open resetlogs;


  2. Database altered.

檢查:

  1. SQL> col error format a10;

  2. SQL> select * from v$recover_file;


  3. no rows selected


  4. SQL> select checkpoint_change# from v$datafile_header;


  5. CHECKPOINT_CHANGE#

  6. ------------------

  7.        2247797

  8.        2247797

  9.        2247797

  10.        2247797

  11.        2247797


  12. SQL> select checkpoint_change# from v$datafile;


  13. CHECKPOINT_CHANGE#

  14. ------------------

  15.        2247797

  16.        2247797

  17.        2247797

  18.        2247797

  19.        2247797

必須保證數(shù)據(jù)文件頭部的scn和控制文件中的scn信息保持一致,數(shù)據(jù)庫才能打開,那么正?;謴蛯⒆裱徒?。

關(guān)于基于控制文件的scn不完全恢復該怎么辦就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

scn
AI