Oracle(2-13) RMAN Complete Recove

news2024/11/16 2:38:20

文章目录

  • 一、基础知识
    • 1、Restoration Using RMAN利用RMAN进行恢复
    • 2、Relocate a Tablespace 重新定位表空间
  • 二、基础操作
    • 1、恢复前的准备
    • 2、恢复数据库
    • 3、恢复单个数据文件
    • 4、在数据库打开的情况下恢复

在这里插入图片描述

RMAN Complete Recove RMAN完全恢复
目标:

  • 了解RMAN用于恢复和恢复
  • 在ARCHIVELOG模式下执行完全恢复
  • 将数据文件还原到不同的位置
  • 使用归档重做日志文件重新定位和恢复表空间

一、基础知识

1、Restoration Using RMAN利用RMAN进行恢复

  • 使用RMAN RESTORE命令从备份集或映像副本还原文件
  • 使用RMAN RECOVERT命令恢复文件

2、Relocate a Tablespace 重新定位表空间

  • 使用SET NEWNAME命令来恢复文件
  • 使用SWITCH命令在控制文件中记录新名称
  • 使用RECOVELTABLESPACE命令恢复表空间的数据文件

二、基础操作

1、恢复前的准备

  • 备份整个数据库
backup database format '/u01/app/oracle/backup/wb_%U';

在这里插入图片描述

  • 做0级备份
backup incremental level 0 database plus archivelog delete all input format '/u01/app/oracle/backup/all_%U';

在这里插入图片描述
在这里插入图片描述

  • 创建一个表t4
    然后在打开一个窗口进入sqlplus中
CREATE TABLE t4(
    ID NUMBER,
    NAME VARCHAR2(50)
);

在这里插入图片描述
插入数据

insert into t4 values(0, 'jack');
insert into t4 values(1, 'henry');

查询表空间数据

select * from t4;

提交数据

commit;

我们在做一下归档切换

alter system checkpoint;
alter system switch logfile;

在这里插入图片描述

  • 做1级增量备份
backup incremental level 1 database plus archivelog delete all input format '/u01/app/oracle/backup/all_%U';

在这里插入图片描述
增量备份完成

  • 最后一步环境准备
    退出RNAM
quit

在这里插入图片描述
进入sqlplus关闭数据库

shutdown immediate;

在这里插入图片描述
删除所有数据文件

cd /u01/app/oracle/oradata/orcl
rm -f *.dbf

在这里插入图片描述
现在我们的准备工作就完成啦

2、恢复数据库

tip:首先要完成基础操作1

  • 进入sqlplus,启动到mount
    状态
startup mount

这个时候如何我们自己是startup也是只能启动到mount,因为所有的数据文件都丢失了

  • 连接RMAN
rman target sys/123@orcl nocatalog

在这里插入图片描述
提示数据库没有打开

  • 开始恢复
restore database;

在这里插入图片描述
RMAN选择合适的备份集开始恢复,我们发现在有全备和0级增量备份的时候,RMAN优先选择了0级增量备份进行恢复

recover database;

在这里插入图片描述
数据库恢复完成
打开数据库

alter database open;

在这里插入图片描述
在这里插入图片描述
再次进入sqlplus查询我们之前的数据
发现可以查到说明数据库已经打开了,并且数据正常

通过以下两个图片进行对比,第一张是恢复后的图片,第二张是恢复前的图片,我们大仙我们的数据也都完整的回来了
恢复后
恢复前
恢复完成

3、恢复单个数据文件

假如我们只有一个数据文件损坏了也是可以恢复的

我们首先进去sqlplus查询损坏数据文件的编号

col name format a50;
select file#,name from v$datafile;

在这里插入图片描述
我们这里以5号文件为例,手动删除5号文件模拟数据文件丢失
首先关闭数据库
关闭数据库

shutdown immediate;

然后手工删除数据文件
在这里插入图片描述
然后我们对5号文件进行恢复
在sqlplus下将数据库启动到mount状态下

startup mount;

然后在RMAN下执行

run {
	set newname for datafile 5 to '/u01/app/oracle/oradata/orcl/example01.dbf';
	restore database;
	switch datafile all;
	recover database;
	alter database open;
}

我这里目录还是放在原来的位置了,在实际生产中一般数据文件损坏都是因为磁盘损坏了,需要放在其他磁盘目录下
在这里插入图片描述
然后就可以将数据文件恢复了

4、在数据库打开的情况下恢复

先退出RMAN
在这里插入图片描述

在数据库启动期间,我们突然删除5号文件
在这里插入图片描述
然后在RMAN下恢复
进入RMAN执行下列命令

run {
	sql 'alter database datafile 5 offline';
	restore datafile 5;
	recover datafile 5;
	sql 'alter database datafile 5 online';
}

这里是对数据文件恢复的命令,如个是表空间的话只需要将datafile改成TABLESPACE,数据文件编号改成表空间名字就可以了,代码样例如下:

run {
	sql 'alter tablespace 表空间的名字 offline immediate';
	restore tablespace 表空间的名字;
	recover tablespace 表空间的名字;
	sql 'alter tablespace 表空间的名字 online';
}

在这里插入图片描述
然后发现数据文件恢复成功

完结散花在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1299498.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HarmonyOS应用开发者基础认证考试(稳过)

判断题 ​​​​​​​ 1. Web组件对于所有的网页都可以使用zoom(factor: number)方法进行缩放。错误(False) 2. 每一个自定义组件都有自己的生命周期正确(True) 3. 每调用一次router.pushUrl()方法,默认情况下,页面栈数量会加1,页面栈支持的…

基于ssm校园教务系统论文

摘 要 互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。针对校园教务信息管理混乱,出错率高,信息安全性差…

Fall in love with English

Fall in love with English 爱上英语 Hiding behind the loose dusty curtain, a teenager packed up his overcoat into the suitcase. 躲藏在布满尘土的松软的窗帘后边,一个年轻人打包他的外套到行李箱中。 He planned to leave home at dusk though there was th…

Java-JDBC操作MySQL

Java-JDBC操作MySQL 文章目录 Java-JDBC操作MySQL一、Java-JDBC-MySQL的关系二、创建连接三、登录MySQL四、操作数据库1、返回型操作2、无返回型操作 练习题目及完整代码 一、Java-JDBC-MySQL的关系 #mermaid-svg-B7qjXrosQaCOwRos {font-family:"trebuchet ms",verd…

Spring Cloud Alibaba及其Nacos初学习

目录 1、Spring Cloud Alibaba是什么 2、Spring Cloud 微服务体系​ 3、Nacos 3.1 Nacos概述 3.2 下载nacos 3.3 解压nacos 3.4 配置文件properties和sql 3.5 访问web管理页面 4、Spring Cloud整合Nacos 4.1 nacos创建命名空间namespace 4.2 配置管理 4.3 Spring C…

记一次堆内外内存问题的排查和优化

为优化淘宝带宽成本,我们在网关 SDK(Java)统一使用 ZSTD 替代 GZIP 压缩以获取更高的压缩比,从而得到更小的响应包。具体实现采用官方推荐的 zstd-jni 库。zstd-jni 会调用 zstd 的 c 库。 背景 在性能压测和优化过程中&#xff0…

错题总结(四)

1.【一维数组】输入10个整数&#xff0c;求平均值 编写一个程序&#xff0c;从用户输入中读取10个整数并存储在一个数组中。然后&#xff0c;计算并输出这些整数的平均值。 int main() {int arr[10];int sum 0;for (int n 0; n < 10; n){scanf("%d", &arr…

数据库连接池Druid

在 Spring Boot 项目中&#xff0c;数据库连接池已经成为标配&#xff0c;然而&#xff0c;我曾经遇到过不少连接池异常导致业务错误的事故。很多经验丰富的工程师也可能不小心在这方面出现问题。 在这篇文章中&#xff0c;我们将探讨数据库连接池&#xff0c;深入解析其实现机…

c语言:理解和避免野指针

野指针的定义&#xff1a; 野指针是指一个指针变量存储了一个无效的地址&#xff0c;通常是一个未初始化的指针或者指向已经被释放的内存地址。当程序尝试使用野指针时&#xff0c;可能会导致程序崩溃、内存泄漏或者其他不可预测的行为。因此&#xff0c;在编程中需要特别注意…

MEMS制造的基本工艺介绍——晶圆键合

晶圆键合是一种晶圆级封装技术&#xff0c;用于制造微机电系统 (MEMS)、纳米机电系统 (NEMS)、微电子学和光电子学&#xff0c;确保机械稳定和气密密封。用于 MEMS/NEMS 的晶圆直径范围为 100 毫米至 200 毫米&#xff08;4 英寸至 8 英寸&#xff09;&#xff0c;用于生产微电…

实用篇 | 3D建模中Blender软件的下载及使用[图文详情]

本文基于数字人系列的3D建模工具Blender软件的安装及使用&#xff0c;还介绍了图片生成3D模型的AI工具~ 目录 1.Blender的下载 2.Blender的使用 3.安装插件(通过压缩包安装) 4.实例 4.1.Blender使用MB-Lab插件快速人体模型建构 4.1.1.点击官网&#xff0c;进行下载 4.1.…

Mybatis、Mybatis整合Spring的流程图

Mybatis 注意MapperProxy里面有invoke方法&#xff0c;当进到invoker方法会拿到 二、mybatis整合Spring 1、当我们的拿到的【Dao】其实就是【MapperProxy】&#xff0c;执行Dao的方法时&#xff0c;会被MapperProxy的【Invoke方法拦截】 2、图上已经标注了MapperProxy包含哪些…

深入理解 Go Channel:解密并发编程中的通信机制

一、Channel管道 1、Channel说明 共享内存交互数据弊端 单纯地将函数并发执行是没有意义的。函数与函数间需要交互数据才能体现编发执行函数的意义虽然可以使用共享内存进行数据交换&#xff0c;但是共享内存在不同的goroutine中容易发送静态问题为了保证数据交换的正确性&am…

基于ssm应急资源管理系统论文

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本应急资源管理系统就是在这样的大环境下诞生&#xff0c;其可以帮助管理者在短时间内处理完毕庞大的数据信息…

入门Redis学习总结

记录之前刚学习Redis 的笔记&#xff0c; 主要包括Redis的基本数据结构、Redis 发布订阅机制、Redis 事务、Redis 服务器相关及采用Spring Boot 集成Redis 实现增删改查基本功能 一&#xff1a;常用命令及数据结构 1.Redis 键(key) # 设置key和value 127.0.0.1:6379> set …

bc-linux-欧拉重制root密码

最近需要重新安装虚拟机的系统 安装之后发现对方提供的root密码不对&#xff0c;无法进入系统。 上网搜了下发现可以进入单用户模式进行密码修改从而重置root用户密码。 在这个界面下按e键 找到图中部分&#xff0c;把标红的部分删除掉&#xff0c;然后写上rw init/bin/…

webpack学习-3.管理输出

webpack学习-3.管理输出 1.简单练手2.设置 HtmlWebpackPlugin3.清理 /dist 文件夹4.manifest5.总结 1.简单练手 官网的第一个预先准备&#xff0c;是多入口的。 const path require(path);module.exports {entry: {index: ./src/index.js,print: ./src/print.js,},output: …

unity 模型生成PNG图片并导出(可以任意控制方向和大小,本文提供三种方案)

提示&#xff1a;文章有错误的地方&#xff0c;还望诸位大神不吝指教&#xff01; 文章目录 前言一、插件RuntimePreviewGenerator&#xff08;方案一&#xff09;二、unity 官方提供的接口&#xff08;方案二&#xff09;三、方法三&#xff0c;可以处理单个模型&#xff0c;也…

“HALCON error #2454:HALCON handle was already cleared in operator set_draw“

分析&#xff1a;错误提示是窗口句柄已经被删除&#xff0c;这是因为前边的一句 HOperatorSet.CloseWindow(hWindowControl1.HalconWindow); 关掉了窗口&#xff0c;屏蔽或删除即可。

基于PLC的污水处理控制系统的设计(论文+源码)

1.系统设计 污水由进水系统通过粗格栅和清污机进行初步排除大块杂质物体以及漂浮物等&#xff0c;到达除砂池中。在除砂池系统中细格栅进一步净化污水中的细小颗粒物体&#xff0c;将污水中的细小沙粒滤除后进入氧化沟反应池。在该氧化沟系统中进行生化处理&#xff0c;分解污…