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

重裝OS及Oracle軟件,巧用RMAN恢復數據

2022-06-13   來源: Oracle 

  OS和Oracle軟件以及所有的datafileredologfilecontrolfile所在的磁盤突然全損壞幸好還有rman的全備所以只好重安裝OSOracle軟件然進行恢復

  用RMAN啟動到nomount

         RMAN> startup nomount;
  已連接到目標數據庫 (未啟動)
  Oracle 例程已啟動
  系統全局區域總計  字節
  Fixed Size  字節
  Variable Size  字節
  Database Buffers  字節
  Redo Buffers  字節

  恢復controlfile

         RMAN> restore controlfile from d:\orabak\C;
  啟動 restore 於 月 
  分配的通道: ORA_DISK_
  通道 ORA_DISK_: sid= devtype=DISK
  通道 ORA_DISK_: 正在恢復控制文件
  通道 ORA_DISK_: 恢復完成
  正在復制控制文件
  輸出文件名=D:\ORACLE\ORADATA\HUNTER\CONTROLCTL
  輸出文件名=D:\ORACLE\ORADATA\HUNTER\CONTROLCTL
  輸出文件名=D:\ORACLE\ORADATA\HUNTER\CONTROLCTL
  完成 restore 於 月 
  RMAN> sql alter database mount;
  sql 語句: alter database mount
  RMAN: ===========================================================
  RMAN: =============== ERROR MESSAGE STACK FOLLOWS ===============
  RMAN: ===========================================================
  RMAN: failure of sql command on default channel at // ::
  RMAN: failure during parse/execution of SQL statement: alter database mount
  ORA: 無效的口令文件D:\oracle\ora\DATABASE\PWDhunterORA

  重創passwordfile

           C:\>orapwd file=D:\oracle\ora\DATABASE\PWDhunterORA password=hunter

  查看備份並用RMAN恢復

         RMAN> list backup;
  RMAN: ===========================================================
  RMAN: =============== ERROR MESSAGE STACK FOLLOWS ===============
  RMAN: ===========================================================
  RMAN: failure of list command at // ::
  RMAN: current DBID  does not match target mounted database (
  )
  RMAN> set dbid=;
  正在執行命令: SET DBID
  RMAN> restore database ;
  啟動 restore 於 月 
  使用通道 ORA_DISK_
  通道 ORA_DISK_: 正在開始恢復數據文件備份集
  通道 ORA_DISK_: 正在指定從備份集恢復的數據文件
  正將數據文件恢復到D:\ORACLE\ORADATA\HUNTER\SYSTEMDBF
  正將數據文件恢復到D:\ORACLE\ORADATA\HUNTER\UNDOTBSDBF
  正將數據文件恢復到D:\ORACLE\ORADATA\HUNTER\DRSYSDBF
  正將數據文件恢復到D:\ORACLE\ORADATA\HUNTER\EXAMPLEDBF
  正將數據文件恢復到D:\ORACLE\ORADATA\HUNTER\INDXDBF
  正將數據文件恢復到D:\ORACLE\ORADATA\HUNTER\TESTDBF
  正將數據文件恢復到D:\ORACLE\ORADATA\HUNTER\USERSDBF
  正將數據文件恢復到D:\ORACLE\ORADATA\HUNTER\XDBDBF
  正將數據文件恢復到D:\ORACLE\ORADATA\HUNTER\RMAN_TSDBF
  通道 ORA_DISK_: 已恢復備份段 
  段 handle=D:\ORABAK\FULL_DB__HHQNJNN__BAK tag=TAGT params=NULL
  通道 ORA_DISK_: 恢復完成
  完成 restore 於 月 
  RMAN> recover database;
  啟動 recover 於 月 
  使用通道 ORA_DISK_
  正在開始介質的恢復
  無法找到存檔日志
  存檔日志線程 = 序列=
  RMAN: ===========================================================
  RMAN: =============== ERROR MESSAGE STACK FOLLOWS ===============
  RMAN: ===========================================================
  RMAN: failure of recover command at // ::
  RMAN: media recovery requesting unknown log: thread  scn 
  由於歸檔和在線日志文件丟失所以無法recover只能resetlogs open打開
  SQL> alter database open resetlogs;
  數據庫已更改
  SQL>


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