RMAN异机恢复数据库记录

embedded/2024/9/24 6:04:20/

场景:数据库服务器宕机,无法恢复

处理:使用备份资料进行异地恢复

1.此处环境为同平台、同版本(操作系统版本可以不同,但数据库版本需相同),源机器和目标机器具有相同的目录结构。

2.目标机器只需要安装oracle数据库软件,不创建数据库

操作系统版本 : CentOS 6.5 x64

数据库版本 : Oracle 11.2.0.1 x64

3、启动数据库至nomount

1)复制pfile至$HOME/dbs/

cp /worktmp/wms/pfile_2022-10-18.ora $ORACLE_HOME/dbs/initorcl.ora

创建pfile内涉及的所有路径

mkdir -p /u01/app/oracle

mkdir -p /u01/app/oracle/admin/orcl/adump

mkdir -p /u01/app/oracle/oradata/orcl

mkdir -p /u01/app/oracle/fast_recovery_area

mkdir -p /u01/app/oracle/arch/

mkdir -p /u01/app/oracle/oradata/orcl

以pfile启动数据库至nomount

startup nomount pfile='/u01/app/oracle/product/11.2.0/db_1/dbs/initorcl.ora';

以pfile创建spfile

create spfile from pfile;

关闭实例,再以spfile启动数据库至nomount

shutdown immediate;

startup nomount;

  1. 还原控制文件

RMAN> restore controlfile from '/worktmp/wms/c-1479196590-20221018-00';

  1. 启动数据库至mount

RMAN> sql 'alter database mount';

  1. 注册备份资料

RMAN>catalog start with '/u01/backup/';

  1. 还原数据库

RMAN> restore database;

  1. 检查备份资料

RMAN> list backup;

  1. 恢复数据库

RMAN> recover database

以OPEN RESETLOGS方式打开数据库

RMAN> sql 'alter database open resetlogs';

生成密码文件

orapwd file=$ORACLE_HOME/dbs/orapworcl password=Cqhkc_123 force=y

恢复listener.ora,重启数据库和监听。

**************************************

chown -R oracle:oinstall /u01

su oracle

mkdir -p /u01/app/oracle/oradata/YILIAO

mkdir -p /u01/app/oracle/admin/YILIAO/adump

mkdir -p /u01/app/oracle/arch

恢复spfile

rman target /

startup nomount

   

restore spfile from '/u01/backup/data/dbfull_20230901/control_c-4281347953-20230901-01';

恢复pfile 即initYILIAO.ora

sqlplus / as sysdba

create pfile from spfile;

startup nomount

恢复控制文件

rman target /

restore controlfile from '/u01/backup/data/dbfull_20230901/control_c-4281347953-20230901-01';

sql 'alter database mount';

向controlfile中注册rman信息。

catalog start with '/u01/backup/data/dbfull_20230901/';

不识别的文件选择NO

list backup; 查看备份

restore database;

数据量大的话可以多开几个通道:

run {

allocate channel c1 device type disk;

allocate channel c2 device type disk;

allocate channel c3 device type disk;

allocate channel c4 device type disk;

restore database;

switch datafile all;

recover database;

}

recover database;

RMAN-03002: failure of recover command at 10/10/2023 17:06:49

RMAN-06054: media recovery requesting unknown archived log for thread 1 with sequence 5204 and starting SCN of 17513607179

此错误的原因是恢复需要的日志记录在控制文件或恢复目录中找不到。解决方法分两种情况:

1.如果相关的日志存在且可用的话,就将此日志记录添加到控制文件或恢复目录中。

2.如果相关的日志已经被删除了或不可用了,那么就按照错误的提示scn将数据库恢复到此scn,本案例是17513607179。也就是说此时数据库只能进行不完全恢复了,在打开数据库时得使用resetlogs打开。

RMAN> recover database until scn 17513607179;  实际执行了这个运行正常,好像归档日志没恢复

或者:

recover database until sequence 5203

run{

      set until sequence 5203;

      recover database;

      }

list backup of archivelog sequence=5204  查看

打开数据库,重新生成归档日志

alter database open resetlogs;

sql 'alter database open resetlogs';

恢复密码文件:

将拷贝过来的密码文件恢复至数据库对应目录下:

cp /u01/rman/orapworcl /u01/oracle/product/11.2.0.4/db_1/dbs/orapworcl

或者手动创建密码文件:

orapwdfile='/u01/oracle/product/11.2.0.4/db_1/dbs/orapworcl' password=oracle entries=30 force=y

注意:

nomount下进行恢复参数文件与控制文件

mount下恢复数据文件


http://www.ppmy.cn/embedded/115942.html

相关文章

MySQL基础篇(黑马程序员2022-01-18)

1 MySQL数据库概述 1.1 MySQL数据库的下载,安装,启动停止 1.2 数据模型 (1)关系型数据库(RDBMS) 概念:建立在关系模型基础上,由多张相互连接的二维表组成的数据库。 特点: A. 使用表存储数据,格式统一,便于维护。…

自学网络安全(黑客技术)2024年 —90天学习计划

🤟 基于入门网络安全/黑客打造的:👉黑客&网络安全入门&进阶学习资源包 前言 什么是网络安全 网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”…

电子电气架构---智能汽车应该是怎么样的架构?

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不…

生成式语言模型技术栈

生成式语言模型的最新技术栈正在快速发展,尤其是随着大规模预训练模型(LLMs)和生成式AI的应用不断扩展。以下是当今最前沿的生成式语言模型技术栈,涵盖从模型开发到优化、推理和部署的各个环节。 1. 基础模型开发 基础模型开发包…

1000Km弹射巡飞器技术详解

随着现代战争形态的演变及科技水平的飞速提升,远程侦察、打击与持久监视能力成为各国军事力量建设的重要方向。1000Km弹射巡飞器作为一种新型无人机系统,凭借其超远的航程、长时间的续航以及高度的灵活性,成为近年来军事技术领域的研究热点。…

OpenTK中使用简单的碰撞检测方法

文章目录 一、边界框检测(Bounding Box Collision)二、圆形检测(Circle Collision)三、射线-物体碰撞检测(Ray Casting)四、凸多边形碰撞检测(Convex Polygon Collision)五、物理引擎集成(Integration with Physics Engines)六、球体碰撞检测(Sphere Collision)七、…

Cocos Creator发布Moloco平台试玩广告(PlayableAd)

官方文档 主要遇到了两点问题。 1.HTML文件内的body需要注入 <script>window.FBPlayableOnCTAClick () > {(typeof FbPlayableAd undefined) ? alert(FBPlayableAd.onCTAClick) : FbPlayableAd.onCTAClick()}</script> 2.跳转商店使用 window.parent.postM…

openssl-AES-128-CTR加解密char型数组分析

本文章通过对一个unsigned char*类型的数据做简单的加解密操作来学习如何使用openssl库函数。 openssl为3.0.0&#xff0c;对此前版本的很多函数都不兼容。 加解密源码 #include <openssl/evp.h> #include <openssl/err.h> #include <string.h> #include …