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…...

MT6893_天玑 1200芯片规格参数介绍_datasheet规格书
天玑 1200(MT6893)是一款专为旗舰级全新5G芯片,它融合了先进的AI、相机和多媒体技术,为用户带来令人惊叹的体验。采用先进的6纳米制程设计,内置各种先进技术。该芯片采用旗舰级的八核CPU架构设计,支持16GB强大的四通道内存以及双通…...

【Android踩过的坑】13.Android Studio 运行成功,但APP没有安装上的问题
【Android踩过的坑】13.Android Studio 运行成功,但APP没有安装上的问题 解决办法: 在app的build.gradle文件下添加以下代码 android {...//android.useNewApkCreatorfalse 在高版本gradle下无效,添加以下代码解决冲突即可packagingOptions…...

redis安装配置
Windows 下 Redis 安装与配置 教程_redis windows-CSDN博客 启动Redis服务 打开cmd窗口,切换到Redis安装路径,输入 redis-server 启动 redis 服务...

企业数字化转型应对传统网络挑战的关键策略
数字化变革正在以前所未有的速度和规模改变着我们的生活和工作方式,使得传统网络架构面临着巨大的挑战。其中包括带宽需求增加、多云应用增加、安全威胁增加以及传统网络设备无法满足需求等问题。 数字化时代需要更高速、更可靠、更安全的网络支持,传统网…...

Java 多线程基础 线程4种创建方式
目录 什么是进程什么是多线程使用多线程的好处使用多线程的应用场景单线程与多线程之间的区别如何理解线程上下文切换使用多线程真的开启越多越好吗线程4种创建的方式1.继承Thread类2.使用Runnable3.使用Callable4.线程池的方式 多线程五种的状态如何优雅的停止一个线程 什么是…...

C++概念相关练习题
目录 一、内存管理 二、运算符重载 三、this指针 四、构造&析构函数 一、内存管理 下面有关c内存分配堆栈说法错误的是( ) A.对于栈来讲,是由编译器自动管理,无需我们手工控制;对于堆来说,释放工作由程序员控制 B. 对…...

区间合并笔记
文章目录 什么是区间合并怎么做区间合并AcWing 803. 区间合并思路解析my - CODEdalao の CODE 什么是区间合并 区间合并是指给定多个区间,让你将重合的区间合并为一个区间 怎么做区间合并 区间合并类问题大多三个办法: 按左端点排序按右端点排序按左右…...

青少年CTF之PHP特性练习(1-5)
青少年CTF-PHP特性练习 文章目录 青少年CTF-PHP特性练习PHP特性01PHP特性02PHP特性03PHP特性04PHP特性05 PHP特性01 看给出的源码,两个变量的值加密后的MD5相同 <?php$s1 "%af%13%76%70%82%a0%a6%58%cb%3e%23%38%c4%c6%db%8b%60%2c%bb%90%68%a0%2d%e9%47…...

《opencv实用探索·七》一文看懂图像卷积运算
1、图像卷积使用场景 图像卷积是图像处理中的一种常用的算法,它是一种基本的滤波技术,通过卷积核(也称为滤波器)对图像进行操作,使用场景如下: 模糊(Blur): 使用加权平…...

RPA机器人如何确保敏感数据的安全性
数据资源作为数字化时代的关键要素,其重要性一直受到高度重视,由此,数据安全也成为企业和个人必须面对的重要问题。随着RPA技术在各个行业的广泛应用,其系统安全性也成了每个企业关注的重中之重。经验丰富的RPA专家可以有效地采取…...