oracle 11G RMAN的List Failure, Advise Failure and Repair Failure

測試一下這幾個命令的使用

 

1.測試環境如下:

 

RMAN> report schema;

Report of database schema for database with db_unique_name ORCL

List of Permanent Datafiles
===========================
File Size(MB) Tablespace           RB segs Datafile Name
---- -------- -------------------- ------- ------------------------
1    710      SYSTEM               ***     /u01/oradata/orcl/system01.dbf
2    610      SYSAUX               ***     /u01/oradata/orcl/sysaux01.dbf
3    30       UNDOTBS1             ***     /u01/oradata/orcl/undotbs01.dbf
4    5        USERS                ***     /u01/oradata/orcl/users01.dbf

List of Temporary Files
=======================
File Size(MB) Tablespace           Maxsize(MB) Tempfile Name
---- -------- -------------------- ----------- --------------------
1    20       TEMP                 32767       /u01/oradata/orcl/temp01.dbf

2.做一個全備

RMAN> backup database format '/u02/RMAN/full_%U';

Starting backup at 07-APR-20
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=1 device type=DISK
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00001 name=/u01/oradata/orcl/system01.dbf
input datafile file number=00002 name=/u01/oradata/orcl/sysaux01.dbf
input datafile file number=00003 name=/u01/oradata/orcl/undotbs01.dbf
input datafile file number=00004 name=/u01/oradata/orcl/users01.dbf
channel ORA_DISK_1: starting piece 1 at 07-APR-20
channel ORA_DISK_1: finished piece 1 at 07-APR-20
piece handle=/u02/RMAN/full_03ut2amm_1_1 tag=TAG20200407T162246 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:01:05
Finished backup at 07-APR-20

Starting Control File and SPFILE Autobackup at 07-APR-20
piece handle=/u01/app/oracle/fast_recovery_area/ORCL/autobackup/2020_04_07/o1_mf_s_1037118231_h8rg4r5s_.bkp comment=NONE
Finished Control File and SPFILE Autobackup at 07-APR-20

RMAN> backup archivelog all format '/u02/RMAN/archive_%U';

Starting backup at 07-APR-20
current log archived
using channel ORA_DISK_1
channel ORA_DISK_1: starting archived log backup set
channel ORA_DISK_1: specifying archived log(s) in backup set
input archived log thread=1 sequence=13 RECID=1 STAMP=1037118278
channel ORA_DISK_1: starting piece 1 at 07-APR-20
channel ORA_DISK_1: finished piece 1 at 07-APR-20
piece handle=/u02/RMAN/archive_05ut2aq7_1_1 tag=TAG20200407T162439 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 07-APR-20

Starting Control File and SPFILE Autobackup at 07-APR-20
piece handle=/u01/app/oracle/fast_recovery_area/ORCL/autobackup/2020_04_07/o1_mf_s_1037118280_h8rg68dj_.bkp comment=NONE
Finished Control File and SPFILE Autobackup at 07-APR-20

3.關閉數據庫,刪除一個數據文件:

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.

[oracle@qht131 /]$ mv /u01/oradata/orcl/users01.dbf /u01/oradata/orcl/users01.dbf_orig

4.啓動數據庫

SQL> startup
ORACLE instance started.

Total System Global Area  313159680 bytes
Fixed Size                  2227944 bytes
Variable Size             134218008 bytes
Database Buffers          171966464 bytes
Redo Buffers                4747264 bytes
Database mounted.
ORA-01157: cannot identify/lock data file 4 - see DBWR trace file
ORA-01110: data file 4: '/u01/oradata/orcl/users01.dbf'


SQL> select open_mode from v$database ;

OPEN_MODE
--------------------
MOUNTED

5. LIST FAILURE查看狀態

RMAN> list failure;

using target database control file instead of recovery catalog
List of Database Failures
=========================

Failure ID Priority Status    Time Detected Summary
---------- -------- --------- ------------- -------
162        HIGH     OPEN      07-APR-20     One or more non-system datafiles are missing

RMAN> list failure detail;

List of Database Failures
=========================

Failure ID Priority Status    Time Detected Summary
---------- -------- --------- ------------- -------
162        HIGH     OPEN      07-APR-20     One or more non-system datafiles are missing
  Impact: See impact for individual child failures
  List of child failures for parent failure ID 162
  Failure ID Priority Status    Time Detected Summary
  ---------- -------- --------- ------------- -------
  165        HIGH     OPEN      07-APR-20     Datafile 4: '/u01/oradata/orcl/users01.dbf' is missing
    Impact: Some objects in tablespace USERS might be unavailable

RMAN> list failure 165;

List of Database Failures
=========================

Failure ID Priority Status    Time Detected Summary
---------- -------- --------- ------------- -------
165        HIGH     OPEN      07-APR-20     Datafile 4: '/u01/oradata/orcl/users01.dbf' is missing
  Impact: Some objects in tablespace USERS might be unavailable

6.ADVISE FAILURE查看建議

RMAN> advise failure;

List of Database Failures
=========================

Failure ID Priority Status    Time Detected Summary
---------- -------- --------- ------------- -------
165        HIGH     OPEN      07-APR-20     Datafile 4: '/u01/oradata/orcl/users       01.dbf' is missing
  Impact: Some objects in tablespace USERS might be unavailable

analyzing automatic repair options; this may take some time
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=20 device type=DISK
analyzing automatic repair options complete

Mandatory Manual Actions
========================
no manual actions available

Optional Manual Actions
=======================
1. If file /u01/oradata/orcl/users01.dbf was unintentionally renamed or moved, r       estore 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/orcl/orcl/hm/reco_502490704.hm

根據建議,reco_502490704.hm爲恢復的腳本,內容如下:

[oracle@qht131 /]$ cat /u01/app/oracle/diag/rdbms/orcl/orcl/hm/reco_502490704.hm
   # restore and recover datafile
   restore datafile 4;
   recover datafile 4;
   sql 'alter database datafile 4 online';

7.根據建議自動恢復

由於上面退出rman了,重新進rman獲取advise建議時,需要重新List failure。

RMAN> list failure;
RMAN>  advise failure;

List of Database Failures
=========================

Failure ID Priority Status    Time Detected Summary
---------- -------- --------- ------------- -------
162        HIGH     OPEN      07-APR-20     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=1 device type=DISK
analyzing automatic repair options complete

Mandatory Manual Actions
========================
no manual actions available

Optional Manual Actions
=======================
1. If file /u01/oradata/orcl/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/orcl/orcl/hm/reco_2853868618.hm

#生成一個新的建議腳本文件

RMAN> Repair Failure preview;

Strategy: The repair includes complete media recovery with no data loss
Repair script: /u01/app/oracle/diag/rdbms/orcl/orcl/hm/reco_2853868618.hm

contents of repair script:
   # restore and recover datafile
   restore datafile 4;
   recover datafile 4;
   sql 'alter database datafile 4 online';

開始恢復

RMAN> repair failure;

Strategy: The repair includes complete media recovery with no data loss
Repair script: /u01/app/oracle/diag/rdbms/orcl/orcl/hm/reco_2853868618.hm

contents of repair script:
   # restore and recover datafile
   restore datafile 4;
   recover datafile 4;
   sql 'alter database datafile 4 online';

Do you really want to execute the above repair (enter YES or NO)? y
executing repair script

Starting restore at 07-APR-20
using channel ORA_DISK_1

channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00004 to /u01/oradata/orcl/users01.dbf
channel ORA_DISK_1: reading from backup piece /u02/RMAN/full_03ut2amm_1_1
channel ORA_DISK_1: piece handle=/u02/RMAN/full_03ut2amm_1_1 tag=TAG20200407T162246
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:02
Finished restore at 07-APR-20

Starting recover at 07-APR-20
using channel ORA_DISK_1

starting media recovery
media recovery complete, elapsed time: 00:00:00

Finished recover at 07-APR-20

sql statement: alter database datafile 4 online
repair failure complete

Do you want to open the database (enter YES or NO)? y
database opened

8.恢復成功

SQL> select open_mode from v$database ;

OPEN_MODE
--------------------
READ WRITE

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章