Oracle 数据库 RMAN 架构与核心概念

1、什么是 RMAN

RMAN(Recovery Manager)是 Oracle 官方提供的备份与恢复工具,内置于 Oracle 数据库软件中,无需额外安装。RMAN 通过与数据库实例交互,以 Oracle 数据块为最小单位进行备份,支持全量备份、增量备份、压缩备份、加密备份等多种方式,是 Oracle 数据库运维中最核心的工具之一。

2、RMAN 核心组件

RMAN 客户端: 可执行程序 rman,用于发起备份、恢复、维护命令。

目标数据库(Target Database): 需要备份或恢复的 Oracle 数据库。

RMAN 客户端: 可执行程序 rman,用于发起备份、恢复、维护命令。

目标数据库(Target Database): 需要备份或恢复的 Oracle 数据库。

恢复目录(Recovery Catalog): 可选的独立数据库 schema,用于存储备份元数据,比控制文件更持久、更安全。

控制文件(Control File): 默认的备份元数据存储位置,记录备份集、数据文件、归档日志等信息。

通道(Channel): RMAN 与目标数据库之间的连接通道,决定备份/恢复的并行度和设备类型(DISK / SBT)。

备份集(Backup Set): RMAN 专有格式,由一个或多个备份片(Backup Piece)组成,支持压缩和加密。

镜像副本(Image Copy): 数据文件的逐块复制,与原文件大小相同,可直接用于恢复。

辅助实例(Auxiliary Instance): 用于复制数据库、表空间时间点恢复等操作的临时实例。

3、RMAN 备份元数据存储

RMAN 备份操作的元数据(哪些文件被备份、备份位置、SCN 信息等)默认存储在目标数据库的控制文件中。对于大规模生产环境,强烈建议配置 Recovery Catalog,将元数据集中管理,避免控制文件丢失导致备份记录丢失。

实例:控制文件丢失导致备份记录全部丢失

**S --- Situation(场景):**某制造业企业生产库仅使用控制文件存储备份元数据。一次磁盘阵列故障导致控制文件和数据文件同时损坏,运维团队虽然有完整的备份集文件,但无法通过 RMAN 恢复------因为控制文件丢失后,RMAN 不知道备份集对应哪些文件、什么 SCN。

**T --- Task(任务):**在最短时间内恢复数据库可用性,同时建立防止再次发生此问题的机制。

A --- Action(行动):

1、通过备份集头部信息手动编目(CATALOG)备份集;

2、恢复控制文件后执行 RESTORE/RECOVER;

3、立即部署 Recovery Catalog 数据库,将所有目标库的备份元数据集中存储;

4、制定控制文件多路复用策略(至少 3 份,分布在不同磁盘组)。

**R --- Result(结果):**数据库在 4 小时内恢复。后续通过 Recovery Catalog 实现了备份元数据的集中管理和跨库查询,控制文件多路复用策略确保单点故障不再影响备份可恢复性。

相关推荐
gQ85v10Db8 小时前
Redis分布式锁进阶第三十八篇
数据库·redis·分布式
oradh8 小时前
Oracle数据库控制文件的概述
数据库·oracle·控制文件·oracle控制文件·oracle基础知识·oracle数据库控制文件概述
阳光九叶草LXGZXJ8 小时前
自制数据库迁移工具-C版-07-HappySunshineV1.6-(支持PG、达梦、Gbase8a)
linux·c语言·开发语言·数据库·学习·postgresql
JoneBB8 小时前
ABAP上传EXCEL模板并将内表内容存到两个sheet中
java·前端·数据库
humors2218 小时前
免费云服务清单
服务器·网络·数据库·免费·云服务·网站·带宽
lolo大魔王8 小时前
Go 语言数据库操作|GORM 实现 CRUD 超详细实战
数据库·golang
网管NO.19 小时前
SQL 是什么?
数据库·sql
June`9 小时前
多线程redis项目之rdb
数据库·redis·缓存
zxrhhm9 小时前
Oracle INSERT ALL 多表多行插入语法详解
数据库·oracle