- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
RMAN实施和维护手册
RMAN恢复的实施
恢复基本策略
Oracle的故障可分为多种类型,但多数可以由Oracle系统自身进行恢复。
RMAN主要进行介质故障的恢复操作。根据介质故障的严重程度,介质恢复可分为多种,如单个表空间恢复、全库恢复、控制文件恢复、SPFILE文件恢复等。
从总体上而言,又可分为完全恢复和不完全恢复。完全恢复可以保证没有任何数据损失,而不完全恢复是指恢复到过去的某个时间点、某个SCN号或日志序列号,数据将会有丢失。因此,在CNAPS中应尽最大可能进行完全恢复。
表空间完全恢复
最常见的情况是,磁盘的某部分出现故障,导致某些数据文件或LV不可用。
故障的定位
首先,应检查数据库是否还在正常运行。例如,可查询:
select status from v$instance;
如果status为OPEN,则数据库仍然正常运行。进一步,可通过查询alert.log文件或执行如下语句,定位需要恢复的表空间:
SELECT r.FILE# AS df#, d.NAME AS df_name, t.NAME AS tbsp_name, d.STATUS, r.ERROR, r.CHANGE#, r.TIME
FROM V$RECOVER_FILE r,
V$DATAFILE d, V$TABLESPACE t
WHERE t.TS# = d.TS#
AND d.FILE# = r.FILE#
如果STATUS为OFFLINE,ERROR为OFFLINE NORMAL,则需要对该表空间进行恢复。
故障的恢复
表空间的恢复可以在线即数据库在正常运行情况下进行。假设对表空间TEST进行恢复,执行如下语句:
先将TEST设置为OFFLINE状态
RMAN sql ‘alter tablespace TEST offline immediate’;
执行restore,装载TS_TAB_HVPS_C01的备份数据
RMAN restore tablespace TEST;
执行recover,对TEST进行恢复操作
RMAN recover tablespace TEST;
将TEST1设置为ONLINE状态,恢复完成。
RMAN sql ‘alter tablespace TEST online’;
全库完全恢复
全库恢复的时间较长,而且数据库必须处于非打开状态,数据库不可用。因此,应尽量减少全库恢复的可能性。一般在数据文件大量出现故障,或者控制文件丢失的情况下,才进行全库恢复。恢复过程如下:
关闭所有节点数据库
RMAN shutdown immediate;
启动数据库并mount。
RMAN startup mount
装载全库
RMAN restore database;
恢复全库
RMAN recover database;
打开数据库,恢复正常运行。
切换到SQLPLUS下,启动数据库
$ sqlplus “/as sysdba”
SQL alter dababase open;
控制文件的恢复
控制文件是数据库正常运行的最重要文件。一般情况下,通过定义几个完全一致的控制文件,来防止单个控制文件故障导致的全库瘫痪。在所有控制文件均出现故障的情况下,将进行控制文件的恢复。恢复的过程如下:
启动数据库,但处于nomount状态
RMAN startup nomount;
装载控制文件
RMAN restore controlfile;
用装载的控制文件,mount数据库
RMAN alter database mount;
装载全库
RMAN restore database;
恢复全库
RMAN recover database;
打开数据库,并重新设置联机日志文件
切换到SQLPLUS下,启动数据库
$ sqlplus “/as sysdba”
SQL alter database open resetlogs;
如果temporary表空间是local-managed,则执行如下命令,将临时文件增加到temporary表空间中。
RMAN SQL “alter tablespace TEMP add tempfile /ora_data1/temp02.dbf reuse”;
此时,最好马上进行一次全库的完整备份。即数据库在关闭情况下的备份。
SPFILE文件的恢复
SPFILE的恢复两种办法。最简单的办法是,在定期生成PFILE的基础上,从PFILE文件的基础上进行恢复,语句如下:
SQL create spfile=SPFILE的LV名 from pfile=PFILE文件名;
恢复过程如下:
如果Catalog数据库注册了多个目标数据库的信息,则设置需恢复的目标数据库DBID。
RMAN set dbid DBID
关闭所有事
原创力文档


文档评论(0)