欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle数据恢复顾问(DRA)使用测试

程序员文章站 2022-05-29 17:24:39
...

来了解Oracle数据恢复顾问(DRA)在这种情况下是如何帮助我们的吧!数据恢复顾问(Data Recovery Advisor)是一款Oracle数据库工

曾经处理过硬盘上数据损坏或者数据丢失的问题么?结果,尽管你还处在诊断和分析问题发生的阶段,最终用户和经理已经联系你,并且希望知道解决问题的大概时间(ETA)了。你是否希望拥有一个简单,并且更为重要的是,快速的方法来诊断和修复这种类型的故障呢?

继续阅读,来了解Oracle数据恢复顾问(DRA)在这种情况下是如何帮助我们的吧!

数据恢复顾问(Data Recovery Advisor)是一款Oracle数据库工具。该工具会自动诊断数据故障,确定并提出相应修复方案,并执行客户要求的修复。以上修复是基于数据故障是一个硬盘上持久性数据的损坏或者丢失。

数据恢复顾问会在遇到问题时,,自动采集数据故障信息,并且,协助执行对于故障的修复。你可以手动修复一个数据故障,或者要求数据恢复顾问来为你执行修复动作。

DRA可以通过企业管理器(EM)Grid Control和/或者恢复管理器(RMAN)来访问。本文将概述在RMAN中使用的命令。

在RMAN中,有四种DRA的命令:
•List Failure - 列出先前执行过的故障评估结果。可能的话,重新验证现有故障并关闭它们。
•Advise Failure - 提出手动和自动修复方案。
•Repair Failure - 通过运行由ADVISE FAILURE建议的最佳修复方案来自动修复故障。完成之后会重新验证现有故障。
•Change Failure - 使你可以改变故障的状态。

例如:下面的步骤有关于一次事故,当一个数据文件已经从操作系统上删除,数据库报告错误。

一个select语句执行失败,并报出如下错误:
SQL> select * from emp;
select * from emp
*
ERROR at line 1:
ORA-01116: error in opening database file 4
ORA-01110: data file 4: '/u01/V112_oradata/users01.dbf'
ORA-27041: unable to open file
Linux Error: 2: No such file or directory
Additional information: 3

DRA命令‘list failure’提供了此次问题的详细信息:
Recovery Manager: Release 11.2.0.3.0 - Production on Wed Aug 21 10:12:36 2013
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.

connected to target database: V112 (DBID=2335388877)

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 21-AUG-13 One or more non-system datafiles are missing

做为DRA的下一步操作,使用命令'advise failure',获得修复该问题的建议方案:

RMAN> advise failure;

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

Failure ID Priority Status Time Detected Summary
---------- -------- --------- ------------- -------
82 HIGH OPEN 21-AUG-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=28 device type=DISK
analyzing automatic repair options complete

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

Optional Manual Actions
=======================
1. If file /u01/V112_oradata/users01.dbf was unintentionally renamed or moved, restore it
2. If file /u01/V112_oradata/test01.dbf was unintentionally renamed or moved, restore it

Automated Repair Options
========================
Option Repair Description
------ ------------------
1 Restore and recover datafile 4; Restore and recover datafile 5
Strategy: The repair includes complete media recovery with no data loss
Repair script: /u02/app/oracle/diag/rdbms/v112/V112/hm/reco_1311249797.hm

DRA信息中描述了,2个数据文件的缺失,并且建议还原和恢复。

如前所述,DRA可以修复故障。执行修复脚本之前,可以预览所建议的命令:

RMAN> repair failure preview;

Strategy: The repair includes complete media recovery with no data loss
Repair script: /u02/app/oracle/diag/rdbms/v112/V112/hm/reco_1311249797.hm

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

现在,你可以决定是否手动运行上面的脚本或让DRA来执行修复:

RMAN> repair failure;

Strategy: The repair includes complete media recovery with no data loss
Repair script: /u02/app/oracle/diag/rdbms/v112/V112/hm/reco_1311249797.hm

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

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

sql statement: alter database datafile 4, 5 offline

Starting restore at 21-AUG-13
using channel ORA_DISK_1