Oracle(2-9) Oracle Recovery Manager Overview and Configuration

文章目录

  • 一、基础知识
    • [1、User Backup VS RMAN](#1、User Backup VS RMAN)
    • [2、Restoring &Recovering DB 还原&恢复数据库](#2、Restoring &Recovering DB 还原&恢复数据库)
    • [3、Recovery Manager Features 管理恢复功能](#3、Recovery Manager Features 管理恢复功能)
    • [4、RMAN Components RMAN组件](#4、RMAN Components RMAN组件)
    • [5、Repository1: Control File 存储库1:控制文件](#5、Repository1: Control File 存储库1:控制文件)
    • [6、Channel Allocation 通道道分配](#6、Channel Allocation 通道道分配)
    • [7、Media Management 介质管理](#7、Media Management 介质管理)
    • [8、Types of Connectoin 连接类型](#8、Types of Connectoin 连接类型)
    • [9、Without a Recovery Catalog 没有恢复目录](#9、Without a Recovery Catalog 没有恢复目录)
    • [10、Recovery Manager Modes 恢复管理器模式](#10、Recovery Manager Modes 恢复管理器模式)
    • [11、RMAN Configuration Settings RMAN配置设置](#11、RMAN Configuration Settings RMAN配置设置)
    • [12、The CONFIGURE Command CONFIGURE命令](#12、The CONFIGURE Command CONFIGURE命令)
    • [13、The SHOW Command SHOW 命令](#13、The SHOW Command SHOW 命令)
    • [14、The LIST Command LIST命令](#14、The LIST Command LIST命令)
    • [15、The REPORT Command REPORT 报告命令](#15、The REPORT Command REPORT 报告命令)
  • 二、基础操作

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命令

  • 配置自动通道:
sql 复制代码
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/db01/BACKUP/%u';
  • 通过指定恢复窗口实施保留策略
sql 复制代码
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 days;
  • 通过指定几余来实施保留策略:
sql 复制代码
 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

bash 复制代码
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 自动通道分配

  • 更改默认设备类型:
bash 复制代码
RMAN> CONFIGURE DEFAULT DEVICE TYPE TO sbt;

这是原来设备类型

然后我们执行上列命令进行更改之后再次查看

这是现在的设备名

然后我们只是实验一下操作,操作完成将他恢复成原来的样子,执行下列语句:

bash 复制代码
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 手动通道分配

  • 备份、复制、还原和恢复命令至少需要一个通道
  • 分配通道会启动目标数据库上的服务器进程
  • 通道影响并行度
  • 通道可以写入到不同的媒体类型
  • 通道可用于施加限制。
bash 复制代码
 RUN {
 	ALLOCATE CHANNEL c1 TYPE disk
 		FORMAT ='/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输出写入日志文件:

bash 复制代码
rman target sys/oracle
	log $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被调用时执行命令文件:

bash 复制代码
rman target sys/oracle
	log $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 命令。

相关推荐
fanxiaohui121384 分钟前
浪潮信息自动驾驶框架AutoDRRT 2.0,赋能高阶自动驾驶
运维·服务器·网络·人工智能·机器学习·金融·自动驾驶
极客代码26 分钟前
【Linux】内核驱动模块
linux·内核·内核模块·unix·驱动
这样の我30 分钟前
mongodb集群搭建
数据库·mongodb
SlothLu42 分钟前
Debezium-KafkaDatabaseHistory
数据库·mysql·kafka·多线程·debezium·cdc·数据迁移
冷瞳1 小时前
Redis基本的全局命令
数据库·redis·缓存
EEE1even1 小时前
Linux服务器驱动安装
linux·运维·服务器
钰爱&1 小时前
【操作系统】Linux之网络编程(TCP)(头歌作业)
linux·网络·tcp/ip
xiaozhiwise1 小时前
Linux syscall
linux
白云如幻1 小时前
SQL99版外连接
数据库·mysql
我们的五年2 小时前
【MySQL课程学习】:MySQL安装,MySQL如何登录和退出?MySQL的简单配置
linux·服务器·数据库·学习·mysql·adb