最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
当前位置: 首页 - 科技 - 知识百科 - 正文

RMAN备份与恢复参数文件还原

来源:懂视网 责编:小采 时间:2020-11-09 15:15:35
文档

RMAN备份与恢复参数文件还原

RMAN备份与恢复参数文件还原:在RMAN用语中,ldquo;还原rdquo;与ldquo;恢复rdquo;具有不同的含义,还原(restore)是指访问先前生成的备份集,从中得到一个或 在RMAN用语中,“还原”与“恢复”具有不同的含义,还原(restore)是指访问先前生成的备份集,从
推荐度:
导读RMAN备份与恢复参数文件还原:在RMAN用语中,ldquo;还原rdquo;与ldquo;恢复rdquo;具有不同的含义,还原(restore)是指访问先前生成的备份集,从中得到一个或 在RMAN用语中,“还原”与“恢复”具有不同的含义,还原(restore)是指访问先前生成的备份集,从

在RMAN用语中,ldquo;还原rdquo;与ldquo;恢复rdquo;具有不同的含义,还原(restore)是指访问先前生成的备份集,从中得到一个或

在RMAN用语中,“还原”与“恢复”具有不同的含义,还原(restore)是指访问先前生成的备份集,从中得到一个或多个对象,然后再磁盘上的某个位置还原这些对象。还原与恢复时分离的。恢复(recovery)是一个使数据库与给定时间点相一致以保证能够打开这个数据库的实际操作。

如果丢失了所有的参数文件(spfile和pfile),而且开启了控制文件自动备份(RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;),我们可以从自动备份的控制文件+参数文件的备份集中恢复服务器的参数文件。不同的操作系统,自动备份的参数文件+控制文件保存的位置略有区别:

Windows:$Oracle_HOME%\database

Linux/Unix:$ORACLE_HOME/dbs

如果之前有自动备份控制文件+参数文件备份集,那么我们只需要简单执行一条语句:restore spfile from autobackup; 语句就可以恢复参数文件。执行该语句时,Oracle会在默认位置中(或则在allocate channel命令定义的位置中)查找所需备份集,该备份集使用Oracle默认的命名规则(%F),该命名规则在FRA里面不适用(FRA有自己的命名规则)。

示例:模拟参数文件丢失(先在脱机状态执行数据库全备,然后移出所有$ORACLE_HOME/dbs下的spfile和pfile文件到临时目录下)

数据库会启动失败:

SQL> startup

ORA-01078: failure in processing system parameters

LRM-00109: could not open parameter file '/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/initorcl.ora'

方法一,使用默认配置进行参数文件恢复

启动RMAN进行参数文件的恢复:

[oracle@localhost ~] $ set oracle_sid=orcl

[oracle@localhost ~] $ rman target /

RMAN>set DBID = 1405321682

RMAN>startup nomount

RMAN>restore spfile from autobackup;

Starting restore at 2015-06-06 21:24:27

allocated channel: ORA_DISK_1

channel ORA_DISK_1: SID=130 device type=DISK

channel ORA_DISK_1: looking for AUTOBACKUP on day: 20150606

channel ORA_DISK_1: looking for AUTOBACKUP on day: 20150605

channel ORA_DISK_1: looking for AUTOBACKUP on day: 20150604

channel ORA_DISK_1: looking for AUTOBACKUP on day: 20150603

channel ORA_DISK_1: looking for AUTOBACKUP on day: 20150602

channel ORA_DISK_1: looking for AUTOBACKUP on day: 20150601

channel ORA_DISK_1: looking for AUTOBACKUP on day: 20150531

channel ORA_DISK_1: no AUTOBACKUP in 7 days found

RMAN-00571: ===========================================================

RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

RMAN-00571: ===========================================================

RMAN-03002: failure of restore command at 06/06/2015 21:24:29

RMAN-06172: no AUTOBACKUP found or specified handle is not a valid copy or piece

错误分析

恢复报错,提示未找到有效的备份集。分析原因:正常来说,刚才做的数据库全备,并设置了configure autobackup on,应该是有参数文件备份的,但是为什么找不到了?默认配置恢复参数文件,Oracle会到$ORACLE_HOME/dbs下寻找指定名称的备份集,从报错信息来看,默认情况下它会在该目录下寻找过去7天内创建的控制文件备份集(可以加上maxseq和maxdays来改变默认天数),如果没找到就报错。去$ORACLE_HOME/dbs目录下查看,确实没有任何备份集,从刚才的备份过程来看,Oracle将控制文件自动保存到FRA里面去了,而且使用的是FRA里面的默认命令规则:

Starting Control File and SPFILE Autobackup at 2015-06-06 21:22:36

piece handle=/home/oracle/app/flash_recovery_area/ORCL/autobackup/2015_06_06/o1_mf_s_881702383_bq5x0wq0_.bkp comment=NONE

Finished Control File and SPFILE Autobackup at 2015-06-06 21:22:37

released channel: c1

由于数据库是启动在nomount状态,参数文件丢失,因此并没有加载参数文件,Oracle也就无法定位FRA,因此Oracle不会去FRA中寻找(测试过将c-1405321682-20150606-01放在FRA中,仍然无法恢复),而是去$ORACLE_HOME/dbs下寻找(补充说明2)。手工恢复参数文件,查看RMAN的默认配置,是否有设置控制文件的默认存储位置(注意了,nomount状态下只能看到RMAN最原始的配置信息,见下面的补充说明1,看不到修改的配置信息,必须将数据库启动到mount状态):

RMAN> show all;


RMAN configuration parameters for database with db_unique_name ORCL are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK;
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
。。

错误解决

备份目录确实是使用的是默认的,为什么自动备份控制文件和参数文件的时候会将备份集保存到FRA中去?确实很奇怪,手工设置一下备份路径:

RMAN> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F';

RMAN> show all;

RMAN configuration parameters for database with db_unique_name ORCL are:

CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default

CONFIGURE BACKUP OPTIMIZATION OFF; # default

CONFIGURE DEFAULT DEVICE TYPE TO DISK;

CONFIGURE CONTROLFILE AUTOBACKUP ON;

CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F';

CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default

。。。

发现 CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; 后面的default没有的,但是值还是不变,在执行一次备份:

RMAN> run

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文档

RMAN备份与恢复参数文件还原

RMAN备份与恢复参数文件还原:在RMAN用语中,ldquo;还原rdquo;与ldquo;恢复rdquo;具有不同的含义,还原(restore)是指访问先前生成的备份集,从中得到一个或 在RMAN用语中,“还原”与“恢复”具有不同的含义,还原(restore)是指访问先前生成的备份集,从
推荐度:
标签: 恢复 备份 文件
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top