Backup And Recovery User's Guide-從RMAN開始-使用資料恢復指導診斷和修復錯誤

LuiseDalian發表於2014-02-13

使用資料恢復指導診斷和修復錯誤

診斷和修復資料庫問題的最簡單的方法是使用資料恢復指導

這個工具提供了診斷持久化資料失敗顯示修復建議自動執行修復的功能。

列出失敗和確定修復選項

failure,是Health Monitor發現的一種持久的資料損壞。

包括物理的邏輯的資料塊的損壞和資料檔案的丟失。每個失敗都有一個失敗優先順序和失敗狀態。

優先順序可以為:CRITICALHIGHLOW

狀態可以為:OPENCLOSED

 

可以執行LIST FAILURE命令,顯示所有的失敗;

如果有失敗存在,則可在相同的會話中執行ADVISE FAILURE來確定手工或自動的修復選項。

練習:顯示失敗並指導失敗(同時開多個SecureCRT會話視窗進行操作)

# 1. 手工將users01.dbf資料檔案改名(此時資料庫處於OPEN狀態)

oracle@Redhat55.cuug.net:/u01/app/oracle/oradata/TestDB12> mv users01.dbf users01_bak.dbf

# 2. 連線到scott使用者,執行資料查詢(因為該方案中的emp表儲存在users表空間中)

sys@TESTDB12>conn scott/scott

Connected.

scott@TESTDB12>select * from emp;

select * from emp

              *

ERROR at line 1:

ORA-01116: error in opening database file 4

ORA-01110: data file 4: '/u01/app/oracle/oradata/TestDB12/users01.dbf'

ORA-27041: unable to open file

Linux-x86_64 Error: 2: No such file or directory

Additional information: 3

 

# 3. RMAN中檢視錯誤

RMAN> list failure;

 

using target database control file instead of recovery catalog

List of Database Failures

=========================

 

Failure ID Priority Status    Time Detected Summary

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

82         HIGH     OPEN      12-JUL-13     One or more non-system datafiles are missing

 

# 4. 對失敗進行指導

RMAN> advise failure;

 

List of Database Failures

=========================

 

Failure ID Priority Status    Time Detected Summary

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

82         HIGH     OPEN      12-JUL-13     One or more non-system datafiles are missing

 

analyzing automatic repair options; this may take some time

allocated channel: ORA_DISK_1

channel ORA_DISK_1: SID=37 device type=DISK

analyzing automatic repair options complete

 

Mandatory Manual Actions

========================

no manual actions available

 

Optional Manual Actions

=======================

1. If file /u01/app/oracle/oradata/TestDB12/users01.dbf was unintentionally renamed or moved, restore it

 

Automated Repair Options

========================

Option Repair Description

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

1      Restore and recover datafile 4 

  Strategy: The repair includes complete media recovery with no data loss

  Repair script: /u01/app/oracle/diag/rdbms/testdb12/TestDB12/hm/reco_2214128973.hm

 

# 5. 最後是生成的一個修復指令碼,如果你不想使用資料修復指導來自動地修復失敗,可以使用這個指令碼作為你自己恢復策略的基礎

# 5.1 檢視生成的指令碼中的內容

oracle@Redhat55.cuug.net:/home/oracle> more /u01/app/oracle/diag/rdbms/testdb12/TestDB12/hm/reco_2214128973.hm

   # restore and recover datafile

   sql 'alter database datafile 4 offline';

   restore datafile 4;

   recover datafile 4;

   sql 'alter database datafile 4 online'; 

ADVISE FAILURE的輸出會顯示手工和自動的修復選項。

首先手動地修復這些問題,如果不能修復這些問題,再檢視自動修復部分。

 

自動的修復選項描述了對一個或多個失敗的伺服器管理的修復。修復是被合併後的,所以一個修復可以修補多個失敗。

修復選項會說明哪個修復被執行,執行這個修復是否會丟失資料。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/17013648/viewspace-1081012/,如需轉載,請註明出處,否則將追究法律責任。

相關文章