RMAN概览

本文介绍了RMAN(Recovery Manager)的主要功能,包括备份整个数据库、数据文件、控制文件等,并探讨了如何通过RMAN执行备份和恢复操作。文章还详细说明了设置recovery catalog的过程,以及如何利用RMAN进行跨平台数据文件迁移。

RMAN的功能:

  • 备份整个数据库,数据文件,控制文件和归档日志文件;
  • 压缩备份,当压缩的备份有数据块更改的时候,只备份那些被更改的数据块;
  • 执行增量备份
  • 支持脚本的编写来对任务进行组合
  • 记录备份操作日志
  • 能够和第三方磁带软件集成
  • 能够提供catalog信息报告和列表
  • 能够将备份信息存储在oracle数据库的catalog中
  • 能够增强性能:例如并行执行备份和恢复
  • 为测试库和开发库复制数据库
  • 测试备份集能否成功的进行恢复
  • 检查在介质中的备份集是否有效
在Oracle10g中RMAN的新特性:
  • 跨操作系统平台迁移数据文件
  • 使用flashback恢复用户错误
  • 自动的TSPITR(tablespace point-in-time recovery)
  • 删除数据库
  • 使用备份集和flash recovery
  • 创建和使用RAMN备份集
  • 配置默认的磁盘备份类型
  • 恢复没有备份的数据文件
  • 数据库变更追踪
  • 从catalog中删除一个数据库
  • 压缩RMAN备份集
  • 增强的错误报告

除RMAN外,还有有两种数据库备份和恢复的方法
  • 用户管理的
  • 数据库管理的:exp和data pump
几种备份方法的比较

功能

RMAN

用户管理的

数据库管理的

SPfile备份

支持

支持

不支持

口令文件备份

不支持

支持

支持

数据库关闭时备份

支持

支持

不支持

数据库开启时备份

支持

不支持

不支持

增量备份

支持

不支持

不支持

错误数据库检测

支持

不支持

支持

自动备份文件

支持

不支持

支持

backup catalogs

支持

不支持

支持

介质管理

支持

支持

支持

平台无关性

支持

不支持

支持


RMAN 两个可以保持备份信息的地方:
1、目标数据库的控制文件
2、建立recovery catalog数据库

recovery catalog数据库中存储的信息包括:
1、备份和恢复信息
2、RMAN脚本
3、数据文件和归档日志的备份信息
4、目标数据库的物理组成和模式信息。

如果要建立recovery catalog数据库,系统中必须有一个RMAN_USER用户,该用户拥有CONNECT,RESOURCE和RECOVERY_CATALOG_OWNER权限。

建立recovery catalog的步骤:
1、在orafan11上建立RMAN存储用的表空间
>create tablespace rmandata
   datafile 'D:\app\fanminggy\oradata\orafan11\RMANDATA01.DBF' size 200M
   extent management local autoallocate
   segment space management auto;
2、在orafan11上数据库服务器上建立用户:
>create user rman_user identified by rman_user default  tablespace data temporary tablespace temp;
--给用户授予权限
>grant connect, resource,recovery_catalog_owner to rman_user;

3、在orafan11上RMAN数据库服务器上启动rman 并建立recovery catalog
rman> connect catalog rman_user/rman_user
rman> create catalog tablespace rmandata;


4、连接到备份目标数据库orafan9:
dos>rman target /
rman>connect catalog "rman_user/rman_user@orafan11"  --用rman_user用户连接到rman数据库
rman> register database --注册数据库

5、对orafan9数据库进行备份:--需要进行备份的目标数据库orafan9必须处于归档数据库模式(archivelog mode)
rman>run
{
    allocate channel c1 type disk;
    backup database format 'db_%u_%d_%s';
    backup format 'log_t%t_s%s_p%p'
    (achive all);
}

6、对orafan9数据库进行恢复:--数据库需要至于mounted状态但是不能open

rman>run

{

   allocate channel c1 type disk;

   allocate channel c2 type disk;

   allocate channel c3 type disk;

   resotre database;

   recover database;

  alter database open;

}

 
 

<think>首先,用户的问题是:"OracleRMAN如何查看已存在的备份集"。我需要根据系统级指令来回答。系统级指令包括: -所有行内数学表达式使用 $...$格式。 -独立公式使用$$...$$格式并单独成段。- LaTeX语法正确。-使用中文回答。-生成相关问题。 -回答中引用的段落末尾自然地添加引用标识,例如 [^1]。用户问题涉及OracleRMAN备份集,所以我需要参考提供的引用内容:-引用[1]:提到压缩OracleRMAN备份集并异地备份MySQL的Shell脚本,包括一个脚本示例。 -引用[2]:解释RMAN备份类型,如镜像复制和备份集。 -引用[3]:展示如何指定路径产生备份集。用户意图是查看已存在的备份集信息。我的回答结构: -结构清晰,帮助用户逐步解决问题。 -确保回答真实可靠。-使用中文。 -生成相关问题。-在引用末尾添加引用标识。 步骤: 1. **理解问题**:用户想知道如何查看OracleRMAN中的备份集信息。2.**关键命令**:在RMAN中,查看备份集的常用命令是 `LIST BACKUP`或`LISTBACKUPSET`。 3. **参考引用**:-引用[2]提到备份集(backupsets),这是RMAN的推荐方式。-引用[3]展示备份命令。-引用[1]有脚本,但可能不直接相关。4.**回答结构**:-介绍RMAN备份集。-列出查看备份集的命令。-提供示例。-解释输出。 5. **生成相关问题**:在末尾添加相关问题。 6. **引用标识**:在引用内容末尾添加 [^1],[^2],等。 可能的命令: -`LIST BACKUP;`列出所有备份。- `LIST BACKUPSET;`列出备份集。 -更具体的查询,如`LISTBACKUPOF DATABASE;`或 `LIST BACKUP SUMMARY;`。 确保回答真实可靠:基于OracleRMAN文档知识。 添加引用:-当提到备份集概念时,引用引用[2]。-当提到备份路径时,引用引用[3]。 生成相关问题:-例如:如何删除旧备份集?如何恢复使用备份集?等。 现在,构建回答:-开头:直接回答问题。-步骤:解释如何使用RMAN命令。-示例:提供RMAN会话示例。-结尾:添加相关问题。 由于没有数学表达式,可能不需要LaTeX格式,但系统指令要求所有行内数学使用$...$,如果有变量或方程。但这里主要是文本,所以可能不需要。如果有,比如在解释中,但要确保。在这个上下文中,可能没有数学表达式,所以可以忽略或确保如果有变量用$...$。最终回答大纲: 1.介绍:简要解释备份集。2.方法:列出查看备份集的命令。 3.示例:展示命令输出。 4.解释:如何理解输出。5.相关问题。引用添加: -例如:"备份集是RMAN推荐的方式[^2]."。</think>### Oracle RMAN 如何查看已存在的备份集 在 Oracle RMAN(Recovery Manager)中,备份集(backup sets)是推荐的备份方式,它通过 RMAN 命令创建,包含数据文件、控制文件或归档日志的压缩备份[^2]。要查看已存在的备份集信息,您可以通过 RMAN 命令行界面执行特定命令来列出备份集详情。以下是逐步说明,确保操作清晰可靠。所有命令均基于 Oracle RMAN 官方文档,并参考了提供的引用内容。 #### 步骤 1: 连接到 RMAN 首先,以 SYSDBA 或其他有权限的用户身份登录到 RMAN。您可以使用 SQL*Plus 或直接启动 RMAN: ```bash # 启动 RMAN 并连接到目标数据库 rman target / ``` 或指定用户名和密码: ```bash rman target sys/password@orcl as sysdba ``` #### 步骤 2: 使用 LIST 命令查看备份集 在 RMAN 提示符下,使用 `LIST BACKUP` 或 `LIST BACKUPSET` 命令来列出所有备份集。这些命令会显示备份集的详细信息,如备份集键(backup set key)、类型、大小、状态和存储位置。 - **基本命令**: ```sql RMAN> LIST BACKUP; ``` 或更针对备份集: ```sql RMAN> LIST BACKUPSET; ``` 这些命令会输出所有备份集,包括完整备份、增量备份和归档日志备份。 - **过滤特定备份**:如果您只想查看数据库备份或指定路径的备份,可以使用子句: ```sql -- 列出所有数据库文件的备份集 RMAN> LIST BACKUP OF DATABASE; -- 列出指定路径的备份集(如引用[3]中提到的自定义路径) RMAN> LIST BACKUP OF DATABASE LIKE '/u02/backup/%'; ``` 引用[3]展示了如何指定路径产生备份集,这有助于在输出中快速定位特定位置的备份[^3]。 #### 步骤 3: 理解输出信息 执行 `LIST BACKUP` 命令后,输出通常包含以下关键字段: - **BS Key**: 备份集唯一标识符。 - **Size**: 备份集大小(例如,字节或 MB)。 - **Device Type**: 备份设备(如 DISK 或 TAPE)。 - **Elapsed Time**: 备份耗时。 - **Status**: 备份状态(AVAILABLE 表示可用)。 - **Piece Name**: 备份片段的物理路径(如 `/u02/backup/image/user01.dbf`)。 示例输出: ``` List of Backup Sets =================== BS Key Type LV Size Device Type Elapsed Time Completion Time ------- ---- -- ---------- ----------- ------------ ------------------- 1 Full 1.25G DISK 00:10:05 2023-10-01 12:00:00 BP Key: 1 Status: AVAILABLE Piece Name: /u02/backup/full_backup.bkp List of Datafiles in backup set 1 File LV Type Ckp SCN Ckp Time ---- -- ---- ---------- --------- 1 Full 1234567 2023-10-01 12:00:00 ``` 输出中,备份集键(BS Key)可用于后续操作,如恢复或删除备份。备份集是高效且压缩的存储形式,与镜像复制(image copies)不同,后者是直接文件副本[^2]。 #### 步骤 4: 使用摘要命令简化查看 如果输出信息过多,可以使用 `LIST BACKUP SUMMARY` 命令获取摘要视图: ```sql RMAN> LIST BACKUP SUMMARY; ``` 这会显示备份集的简要统计,如备份类型、数量和总大小,便于快速概览。 #### 注意事项 - **权限要求**:执行这些命令需要 SYSDBA 或 SYSBACKUP 权限。 - **备份集状态**:确保备份集状态为 AVAILABLE;如果为 EXPIRED,表示备份已失效,需重新验证。 - **参考脚本**:引用[1]中的 Shell 脚本展示了如何自动化备份集压缩,但查看备份集需直接在 RMAN 中操作[^1]。 - **最佳实践**:定期查看备份集可监控备份完整性,避免恢复失败。 通过以上步骤,您可以轻松查看和管理 Oracle RMAN 中的备份集。如果您遇到问题,建议查阅 Oracle 官方文档或使用 `HELP LIST` 命令获取更多选项。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值