Oracle(2-9) Oracle Recovery Manager Overview and Configuration
文章目录
- 一、基础知识
- 1、User Backup VS RMAN
- 2、Restoring &Recovering DB 还原&恢复数据库
- 3、Recovery Manager Features 管理恢复功能
- 4、RMAN Components RMAN组件
- 5、Repository1: Control File 存储库1:控制文件
- 6、Channel Allocation 通道道分配
- 7、Media Management 介质管理
- 8、Types of Connectoin 连接类型
- 9、Without a Recovery Catalog 没有恢复目录
- 10、Recovery Manager Modes 恢复管理器模式
- 11、RMAN Configuration Settings RMAN配置设置
- 12、The CONFIGURE Command CONFIGURE命令
- 13、The SHOW Command SHOW 命令
- 14、The LIST Command LIST命令
- 15、The REPORT Command REPORT 报告命令
- 二、基础操作
- 1、连接到RMAN
- 2、Auto Channel Allocation 自动通道分配
- 3、Manual Channel Allocation 手动通道分配
- 4、Additional Line Arguments 增加参数方法
- 将RMAN输出写入日志文件:
- 当RMAN被调用时执行命令文件:
Oracle Recovery Manager Overview and Configuration Oracle恢复和管理的概述和配置(RMAN的使用和配置)
目标:
- 了解RMAN的体系结构
- 掌握RMAN存储库和控制文件的使用
- 掌握通道分配
- 掌握介质管理库界面不使用恢复目录连接到RMAN
- 配置RMAN环境
一、基础知识
1、User Backup VS RMAN

- 两种备份的基本方式
- 这里只做了解一下就行,知道RMAN的重要性
- 后期笔者会出关于备份的学习笔记
2、Restoring &Recovering DB 还原&恢复数据库

- 当我们在SCN为100时进行备份时,数据库在SCN为500时损坏
- 我们可以将数据库先恢复到SCN100的时候的状态
- 然后在使用Archive redo logs和redo log文件将数据恢复
- 这就是数据恢复的基本思想
- 对于SCN的解释:
- SCN(System Change Number)是Oracle数据库中的一个重要概念,用于表示数据库中发生变化的数量和时间点。每当数据库中发生一次变化,如插入、更新或删除数据时,SCN会自动增加。SCN是一个递增的数字,可以用来确定数据更改的顺序和时间戳。在Oracle数据库中,SCN的使用非常广泛,例如在数据恢复、备份和归档等过程中都要用到SCN。
3、Recovery Manager Features 管理恢复功能
RMAN提供了一种灵活的方式来:
- 备份数据库、表空间、数据文件、控制文件和归档日志
- 存储经常执行的备份和恢复操作
- 执行增量块级备份
- 跳过未使用的块
- 指定备份的限制
- 在备份期间检测损坏的块
- 通过以下方式提高性能:
- 自动并行化
- 减少重做的生成
- 限制备份的L/0
- 磁带流
- 管理备份和恢复任务
4、RMAN Components RMAN组件

- Target database是目标数据库(需要备份的数据库)
5、Repository1: Control File 存储库1:控制文件
- RMAN存储库是关于目标数据库以及备份和恢复操作的元数据
- RMAN存储库总是存储在目标数据库的控制文件中
- 参数CONTROL_FTLE_RECORD_KEEP_TIME确定记录在被覆盖之前的最小年限 (以天数为单位)
- 控制文件的大小可能会增加
6、Channel Allocation 通道道分配

7、Media Management 介质管理

- 大型的备份需要买专门的磁带介质,磁带卡,磁带库,或者光盘卡之类的介质
- Media management library:介质管理库,这个是第三方设备提供商需要提供的库,这个库必须符合Oracle的规范,能够让RMAN驱动
8、Types of Connectoin 连接类型
- 目标数据库
- 恢复目录数据库
- 辅助数据库
- 备用数据库
- 重复数据库
- TSPITR实例
9、Without a Recovery Catalog 没有恢复目录

10、Recovery Manager Modes 恢复管理器模式
- 交互模式
- 在做分析的时候用
- 尽量减少经常使用
- 避免使用日志选项
- 批处理模式(重点)
- 用于自动化作业
- 最大限度地减少操作员错误
- 设置日志文件以获取信息
11、RMAN Configuration Settings RMAN配置设置
- RMAN是使用默认配置设置预设的
- 使用CONFIGURE命令可以:
- 配置自动通道
- 指定备份保留策略
- 指定要创建的备份副本数
- 限制备份集的大小
- 使表空间免于备份
- 启用和禁用备份优化
12、The CONFIGURE Command CONFIGURE命令
- 配置自动通道:
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/db01/BACKUP/%u';
- 通过指定恢复窗口实施保留策略
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 days;
- 通过指定几余来实施保留策略:
CONFIGURE RETENTION POLICY TO REDUNDANCY 2:
13、The SHOW Command SHOW 命令
- 显示持久配置设置
- 使用sHow命令显示:
- 自动频道配置设置
- 备份保留策略设置
- 要创建的备份副本数
- 备份集大小限制
- 从备份中排除的表空间
- 备份优化状态
- 使用SHOWALL显示所有设置:
show all
14、The LIST Command LIST命令
- LIST命令操作
- 列出数据文件的备份集和副本
- 列出指定表空间的任何数据文件的备份集和副本
- 列出包含指定范围的归档日志的备份集和副本
- The LIST Command LIST命令
- 列出数据库中所有文件的备份:
LIST BACKUP OF DATABASE;
- 列出包含
users01.dbf数据文件的所有备份集LIST BACKUP OF DATAFILE "/db01/ORADATA/u03/users01.dbf";
- 列出system中数据文件的所有副本
- LIST COPY OF TABLESPACE "SYSTEM’;
- 列出数据库中所有文件的备份:
15、The REPORT Command REPORT 报告命令
- 生成对存储库的详细分析
- 生成报告以回答:
- 哪些文件需要备份
- 哪些备份可以被删除
- 哪些文件是不可恢复的
- REPORT NEED BACKUP 报告需要备份
- 需要三个或更多增量备份以进行恢复的文件:
REPORT NEED BACKUP incremental 3;
- 文件已经三天没有备份了(报告需要备份三天):
REPORT NEED BACKUP days 3;
- 如果没有两个或多个备份,则需要备份:
REPORT NEED BACKUP redundancy 2;
- 3天前恢复所票得备份:
REPORT NEED BACKUP recovery window of 3 days;
- 需要三个或更多增量备份以进行恢复的文件:
二、基础操作
1、连接到RMAN
rman target sys/123@orcl nocatalog

这是一个使用Oracle RMAN(Recovery Manager)的命令,用于连接到Oracle数据库并指定目标数据库和连接信息。让我解释一下:
rman: 这是启动Oracle RMAN的命令。target sys/123@orcl: 这部分命令用于指定RMAN的目标数据库和连接信息。sys: 这是数据库用户的名称,通常是sys,表示超级用户。123: 这是与用户相关联的密码,这里假设密码是123。@orcl: 这是数据库的连接描述符,通常包括数据库的TNS(Transparent Network Substrate)别名。在这里,数据库别名是orcl。
nocatalog: 这是指定RMAN不使用RMAN目录的选项。RMAN目录是一个存储有关备份和恢复的信息的数据库。使用nocatalog表示RMAN将直接连接到目标数据库,而不是连接到RMAN目录数据库。
综合起来,这个命令的含义是使用RMAN连接到Oracle数据库,目标数据库是orcl,用户名是sys,密码是123,而且不使用RMAN目录。
2、Auto Channel Allocation 自动通道分配
- 更改默认设备类型:
RMAN> CONFIGURE DEFAULT DEVICE TYPE TO sbt;

这是原来设备类型
然后我们执行上列命令进行更改之后再次查看

这是现在的设备名
然后我们只是实验一下操作,操作完成将他恢复成原来的样子,执行下列语句:
CONFIGURE DEFAULT DEVICE TYPE clear;

- 配置自动通道的并行性:
RMAN> CONFIGURE DEVICE TYPE DISK PARALLELISM 3;
- 配置自动通道选项:
RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT =/BACKUP/RMAN/U';RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK MAXPIECESIZE 2G:
3、Manual Channel Allocation 手动通道分配
- 备份、复制、还原和恢复命令至少需要一个通道
- 分配通道会启动目标数据库上的服务器进程
- 通道影响并行度
- 通道可以写入到不同的媒体类型
- 通道可用于施加限制。
RUN {ALLOCATE CHANNEL c1 TYPE diskFORMAT ='/db01/BACKUP/usr0520.bak';BACKUP DATAFILE '/db01/ORADATA/users0l.dbf';}
这是一个使用Oracle RMAN的脚本块,用于执行数据库备份。让我解释一下这个脚本的各个部分:
-
RUN: 这是RMAN脚本的一个关键字,表示接下来将运行一系列RMAN命令。 -
ALLOCATE CHANNEL c1 TYPE disk FORMAT='/db01/BACKUP/usr0520.bak';: 这部分命令用于分配一个备份通道,并指定备份文件的格式。具体来说:ALLOCATE CHANNEL c1: 分配一个名为c1的备份通道。TYPE disk: 指定备份通道的类型为磁盘。FORMAT='/db01/BACKUP/usr0520.bak': 指定备份文件的格式和位置,这里的备份文件将保存在/db01/BACKUP目录下,文件名为usr0520.bak。
-
BACKUP DATAFILE '/db01/ORADATA/users0l.dbf';: 这部分命令用于执行实际的数据文件备份。BACKUP DATAFILE '/db01/ORADATA/users0l.dbf': 表示要备份指定路径下的数据文件,这里的路径是/db01/ORADATA/users0l.dbf。
整体来说,这个脚本的目的是使用RMAN备份Oracle数据库的一个数据文件(users0l.dbf),并将备份文件保存在指定的磁盘位置(/db01/BACKUP/usr0520.bak)。备份通道(c1)用于管理备份的过程。
4、Additional Line Arguments 增加参数方法
将RMAN输出写入日志文件:
rman target sys/oraclelog $ORACLE_HOME/ORADATA/u03/rman.log append
这是一个使用 Oracle RMAN(Recovery Manager)的命令,让我解释一下这个命令的各个部分:
-
rman: 这是启动 Oracle RMAN 的命令。 -
target sys/oracle: 这部分命令用于连接到目标数据库,其中:sys: 这是数据库用户的名称,通常是 sys,表示超级用户。oracle: 这是与用户相关联的密码,这里假设密码是 oracle。
-
log $ORACLE_HOME/ORADATA/u03/rman.log: 这部分命令用于指定 RMAN 日志文件的路径和文件名,其中:$ORACLE_HOME: 这是 Oracle 软件的主目录的环境变量,指向 Oracle 软件的安装路径。/ORADATA/u03/rman.log: 这是 RMAN 日志文件的完整路径和文件名。append选项表示如果文件已存在,则将日志信息追加到现有文件末尾,而不是覆盖文件。
综合起来,这个命令的含义是使用 RMAN 连接到 Oracle 数据库,目标数据库用户是 sys,密码是 oracle,并且将 RMAN 的日志信息记录到指定的日志文件中,如果文件已存在,则将日志信息追加到文件末尾。
当RMAN被调用时执行命令文件:
rman target sys/oraclelog $ORACLE_HOME/ORADATA/u03/rman.log append@'$ORACLE_HOME/STUDENT/LABS/my_rman_script.rcv'
这个命令是在 Oracle RMAN 中执行一个脚本文件的命令,让我逐步解释:
rman target sys/oracle: 这部分命令用于连接到目标数据库,其中:sys: 这是数据库用户的名称,通常是 sys,表示超级用户。oracle: 这是与用户相关联的密码,这里假设密码是 oracle。
log $ORACLE_HOME/ORADATA/u03/rman.log append: 这部分命令用于指定 RMAN 日志文件的路径和文件名,并使用append选项,表示如果文件已存在,则将日志信息追加到现有文件末尾,而不是覆盖文件。$ORACLE_HOME: 这是 Oracle 软件的主目录的环境变量,指向 Oracle 软件的安装路径。
@'$ORACLE_HOME/STUDENT/LABS/my_rman_script.rcv': 这部分命令使用@符号来执行一个 RMAN 脚本文件。具体来说:$ORACLE_HOME/STUDENT/LABS/my_rman_script.rcv: 这是 RMAN 脚本文件的路径和文件名。RMAN 脚本文件包含一系列 RMAN 命令,这些命令将被按顺序执行。
综合起来,这个命令的含义是使用 RMAN 连接到 Oracle 数据库(sys 用户,密码 oracle),将 RMAN 的日志信息记录到指定的日志文件中,如果文件已存在,则将日志信息追加到文件末尾。然后,执行指定路径下的 RMAN 脚本文件,其中包含一系列 RMAN 命令。
相关文章:
Oracle(2-9) Oracle Recovery Manager Overview and Configuration
文章目录 一、基础知识1、User Backup VS RMAN2、Restoring &Recovering DB 还原&恢复数据库3、Recovery Manager Features 管理恢复功能4、RMAN Components RMAN组件5、Repository1: Control File 存储库1:控制文件6、Channel Allocation 通道道分配7、Media Manageme…...
滑动验证码
先上图 代码: <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>滑动验证码</title><style>* {margin: 0;padding: 0;}.box {position: relative;width: 375px;margin: 100px a…...
数据爬取+可视化实战_告白气球_词云展示----酷狗音乐
一、前言 歌词上做文本分析,数据存储在网页上,需要爬取数据下来,词云展示在工作中也变得日益重要,接下来将数据爬虫与可视化结合起来,做个词云展示案例。 二、代码 # -*- coding:utf-8 -*- # 酷狗音乐 通过获取每首歌…...
rkmedia_vi_get_frame_test.c 代码解析
使用示例: 录像: rkmedia_vi_get_frame_test -a /etc/iqfiles/ -I 1 -o 1080.nv12 然后用yuvplayer.exe可以播放。 录像10帧: rkmedia_vi_get_frame_test -a /etc/iqfiles/ -I 1 -o 1080.nv12 -c 10 解析代码: #include <as…...
探究Kafka原理-3.生产者消费者API原理解析
👏作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家📕系列专栏:Spring源码、JUC源码、Kafka原理🔥如果感觉博主的文章还不错的话,请ὄ…...
Linux系统iptables扩展
目录 一. iptables规则保存 1. 导出规则保存 2. 自动重载规则 ①. 当前用户生效 ②. 全局生效 二. 自定义链 1. 新建自定义链 2. 重命名自定义链 3. 添加自定义链规则 4. 调用自定义链规则 5. 删除自定义链 三. NAT 1. SNAT 2. DNAT 3. 实验 ①. 实验要求 ②. …...
Openwrt 系统安装 插件名称与中文释义
系统镜像 当时是去官网找对应的,但是作为门外汉,想简单,可以试试这个网站 插件 OpenWrt/Lede全部插件列表功能注释...
[原创]Delphi的SizeOf(), Length(), 动态数组, 静态数组的关系.
[简介] 常用网名: 猪头三 出生日期: 1981.XX.XXQQ: 643439947 个人网站: 80x86汇编小站 https://www.x86asm.org 编程生涯: 2001年~至今[共22年] 职业生涯: 20年 开发语言: C/C、80x86ASM、PHP、Perl、Objective-C、Object Pascal、C#、Python 开发工具: Visual Studio、Delphi…...
C++(20):bind_front
C(11):bind_c11 bind_风静如云的博客-CSDN博客 提供了方法来绑定函数参数的方法。 C20提供了bind_front用于简化这个绑定。 #include <iostream> #include <functional> using namespace std;void func1(int d1, int d2) {cout<<__func__<&l…...
【spring】bean的后处理器
目录 一、作用二、常见的bean后处理器2.1 AutowiredAnnotationBeanPostProcessor2.1.1 说明2.1.2 代码示例2.1.3 截图示例 2.2 CommonAnnotationBeanPostProcessor2.2.1 说明2.2.2 代码示例2.2.3 截图示例 2.3 ConfigurationPropertiesBindingPostProcessor2.3.1 说明2.3.2 代码…...
Centos7安装docker、java、python环境
文章目录 前言一、docker的安装二、docker-compose的安装三、安装python3和配置pip3配置python软链接(关键) 四、Centos 7.6操作系统安装JAVA环境 前言 每次vps安装docker都要看网上的文章,而且都非常坑,方法千奇百怪,…...
简单小结类与对象
/*** Description 简单小结类与对象*/ package com.oop;import com.oop.demo03.Pet;public class Application {public static void main(String[] args) {/*1.类与对象类是一个模版:抽象,对象是一个具体的实例2.方法定义、调用!3.对象的引用…...
ABAP 如何获取内表行的索引值(index) ?
获取索引值 在ABAP中,如果需要获取一个内表中某条记录的索引(index),可以使用 READ TABLE 语句。在 READ TABLE 语句后面的 WITH KEY 子句可以指定搜索条件,如果找到了匹配的记录,系统字段 SY-TABIX 将保存…...
ESP32-Web-Server编程- 使用表格(Table)实时显示设备信息
ESP32-Web-Server编程- 使用表格(Table)实时显示设备信息 概述 上节讲述了通过 Server-Sent Events(以下简称 SSE) 实现在网页实时更新 ESP32 Web 服务器的传感器数据。 本节书接上会,继续使用 SSE 机制在网页实时显…...
vue3 Hooks函数使用及常用utils封装
hooks 是什么 vue3使用了composition API,我们可自定义封装hooks,达到复用,在Vue2中采取的mixins,对mixins而言, hooks更清楚复用功能代码的来源, 更清晰易懂。 简单来说:hooks 就是函数的一种写法…...
matlab 无迹卡尔曼滤波
1、内容简介 略 26-可以交流、咨询、答疑 2、内容说明 无迹卡尔曼滤波 无迹卡尔曼滤波 无迹卡尔曼滤波 3、仿真分析 %该文件用于编写无迹卡尔曼滤波算法及其测试 %注解:主要子程序包括:轨迹发生器、系统方程 % 测量方程、UKF滤波器 %----…...
大脑--学习方法
1.大脑喜欢色彩。平时使用高质量的有色笔或使用有色纸,颜色能帮助记忆。 2.大脑集中精力最多只有25分钟。这是对成人而言,所以学习20到30分钟后就应该休息10分钟。你可以利用这段时间做点家务,10分钟后再回来继续学习,效果会更好…...
4.C转python
1.建立函数: def 函数名(形参): 函数体(记得写缩进) return 返回值(python中可以没有return) 2.调用函数: 函数名(实参) 实参和形参个数相等即可,类型不需要相同 其中接收返回值与C中的差不多 3.如果只是定义而不调用则函数不会执行 4.先定义函数,后调用 5.python中可以…...
YOLOv5项目实战(5)— 算法模型优化和服务器部署
前言:Hello大家好,我是小哥谈。近期,作者所负责项目中的算法模型检测存在很多误报情况,为了减少这种误报情况,作者一直在不断优化算法模型。鉴于此,本节课就给大家详细介绍一下实际工作场景中如何去优化算法模型和进行部署,另外为了方便大家进行模型训练,作者在文章中提…...
JavaScript类型判断:解密变量真实身份的神奇技巧
文章目录 1. typeof运算符2. instanceof运算符3. Object.prototype.toString4. Array.isArray5. 使用constructor属性6. 使用Symbol.toStringTag7. 使用is类型判断库8. 谨慎使用隐式类型转换结语 🎉JavaScript类型判断:解密变量真实身份的神奇技巧 ☆* o…...
中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试
作者:Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位:中南大学地球科学与信息物理学院论文标题:BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接:https://arxiv.…...
定时器任务——若依源码分析
分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...
【git】把本地更改提交远程新分支feature_g
创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...
Mobile ALOHA全身模仿学习
一、题目 Mobile ALOHA:通过低成本全身远程操作学习双手移动操作 传统模仿学习(Imitation Learning)缺点:聚焦与桌面操作,缺乏通用任务所需的移动性和灵活性 本论文优点:(1)在ALOHA…...
重启Eureka集群中的节点,对已经注册的服务有什么影响
先看答案,如果正确地操作,重启Eureka集群中的节点,对已经注册的服务影响非常小,甚至可以做到无感知。 但如果操作不当,可能会引发短暂的服务发现问题。 下面我们从Eureka的核心工作原理来详细分析这个问题。 Eureka的…...
Java + Spring Boot + Mybatis 实现批量插入
在 Java 中使用 Spring Boot 和 MyBatis 实现批量插入可以通过以下步骤完成。这里提供两种常用方法:使用 MyBatis 的 <foreach> 标签和批处理模式(ExecutorType.BATCH)。 方法一:使用 XML 的 <foreach> 标签ÿ…...
三分算法与DeepSeek辅助证明是单峰函数
前置 单峰函数有唯一的最大值,最大值左侧的数值严格单调递增,最大值右侧的数值严格单调递减。 单谷函数有唯一的最小值,最小值左侧的数值严格单调递减,最小值右侧的数值严格单调递增。 三分的本质 三分和二分一样都是通过不断缩…...
实战三:开发网页端界面完成黑白视频转为彩色视频
一、需求描述 设计一个简单的视频上色应用,用户可以通过网页界面上传黑白视频,系统会自动将其转换为彩色视频。整个过程对用户来说非常简单直观,不需要了解技术细节。 效果图 二、实现思路 总体思路: 用户通过Gradio界面上…...
9-Oracle 23 ai Vector Search 特性 知识准备
很多小伙伴是不是参加了 免费认证课程(限时至2025/5/15) Oracle AI Vector Search 1Z0-184-25考试,都顺利拿到certified了没。 各行各业的AI 大模型的到来,传统的数据库中的SQL还能不能打,结构化和非结构的话数据如何和…...
离线语音识别方案分析
随着人工智能技术的不断发展,语音识别技术也得到了广泛的应用,从智能家居到车载系统,语音识别正在改变我们与设备的交互方式。尤其是离线语音识别,由于其在没有网络连接的情况下仍然能提供稳定、准确的语音处理能力,广…...
