Oracle OCP笔记(28)RMAN备份 - Catalog

本文详细介绍了Oracle RMAN的恢复目录,包括恢复目录的作用、配置、连接方式,以及如何使用恢复目录进行数据库的备份、恢复、脚本创建等操作。同时,讨论了恢复目录数据库的备份和恢复策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Oracle OCP笔记(28)RMAN备份 - Catalog

一.恢复目录(Recovery Catalog)
    RMAN备份称为服务器管理的备份,所有工作均由服务器进程完成。RMAN使用在目标数据库的控制文件中存储的仓库,此仓库包含执行的所有备份的详细信息,也可以创建一个专门的Catalog数据库来管理此仓库。此Catalog数据库可以管理多个数据库的备份信息。

二.使用恢复目录数据库
(1).恢复目录数据库的空间要求
    只需要使用一个比较小的数据库来作为恢复目录数据库,存放仓库数据库的表空间至少需要125MB用于保存恢复目录条目的空间。
    ·SYSTEM表空间90MB
    ·TEMP表空间5MB
    ·UNDO表空间5MB
    ·在恢复目录中注册的每个数据库的RMAN默认表空间占15MB
    ·每个联机重做日志文件1MB

(2).配置恢复目录数据库.
create tablespace catadat datafile '/u01/app/oracle/cata/catadat01.dbf' size 100m autoextend on;
create user cata indetified by *** cata default tablespace catadat;
grant connect,resource,recovery_catalog_owner to cata;

(3).连接到Catalog数据库
连接到目标数据库和Catalog数据库,
rman catalog cata/cata@cata;
rman target sys/oracle@orcl catalog cata/cata@cata;

不使用catalog连接到目标数据库
rman target / nocatalog;  -- 等同于rman target /

(4).使用恢复目录数据库
rman target sys/oracle@orcl catalog cata/cata@cata;
RMAN> create catalog tablespace catadat;   -- 创建恢复目录,初始化仓库
RMAM> register database;                   -- 注册数据库,将要备份的数据库在RMAN仓库中注册
RMAN> resync catalog;                      -- 同步恢复目录
RMAN> unregister database;                 -- 注销数据库
RMAN> drop catalog;                        -- 删除恢复目录
RMAN> upgrade catalog;                     -- 更新版本

RMAN> report need backup days 7;           -- 报告需要备份的信息,与不使用catalog方法相同

(5).记录其他备份文件
RMAN> catalog start with '';               -- 指定文件夹或路径
    包含以下文件类型:
    ·数据文件副本(datafile copy)
    ·备份信息段(backup piece)
    ·控制文件副本(controlfile copy)
    ·归档日志文件(archivelog)

RMAN> catalog recovery area noprompt;      -- 重新记录闪回恢复区中的所有备份内容

三.RMAN存储脚本
(1).创建RMAN存储脚本
可以创建全局和本地脚本
RMAN> create global script global_backup_db { backup database plus archivelog;}
RMAN> create script global_backup_db { backup database plus archivelog;}
RMAN> create script global_backup_db from file '/home/rjb/dbscripts/global_bak.rman';

RMAN> create script level0 {
allocate channel a1 type disk;
allocate channel a2 type disk;
backup incremental level 0 database;
release channel a1;
release channel a2;
}

(2).执行RMAN存储脚本
RMAN> run {execute script global_backup_db; }

(3).检索RMAN存储脚本
RMAN> list script names;
RMAN> print global script global_backup_db;

(4).替换和删除RMAN存储脚本
RMAN> replace global script backup_ts{ backup tablespace system; };
RMAN> delete script local_backup_db;

四.备份与恢复catalog.
(1).备份恢复目录数据库
    一般不要将恢复目录与目标数据库保存在同一个数据库中。
    备份恢复目录数据库,Oracle建议的使用配置:
    ·将数据库的运行模式配置为ARCHIVELOG
    ·将RMAN参数RETENTION POLICY设置为REDUNDANCY(大于1)
    ·每次备份目标数据库后,将恢复目录备份到磁盘和磁带中(两个独立的介质类型).
    ·使用backup database plus archivelog备份恢复目录.
    ·使用configure controlfile autobackup on确保在每次RMAN备份后备份控制文件。

(2).丢失恢复目录后进行恢复
    如果丢失了恢复目录数据库,可以像恢复其他有备份且运行在archivelog模式的数据库那样,执行恢复操作。
    如果未备份恢复目录数据库,使用以下步骤,可以检索目标数据库备份的大多数或全部元数据:
    ·从头重新创建恢复目录数据库。
    ·将目标数据库注册到新恢复目录中。
    ·执行resync catalog操作,复制目标数据库控制文件中的所有可用备份信息。
    ·使用catalog start with命令,将目标数据库的任何可用备份信息添加到恢复目录中。
    由于目标数据库的先前物理备份文件包含目标DBID,而RMAN使用DBID确定恢复目录中的每个数据库,rman catalog start with命令可以方便地将每个备份分配给恢复目录中的相关目标数据库。

(3).导出导入恢复目录
    可以和其他数据库一样,可以使用Oracle Data Pump导出导入程序expdp和impdp创建恢复目录的逻辑备份,使用此逻辑备份方法,将恢复目录移到另一个数据库中。
    ·使用导出程序,将恢复目录模式复制到导出转储文件中。
    ·创建目标数据库上的恢复目录所有者,并为其分配适当的权限。
    ·使用相应的导入程序,将恢复目录模式复制到目标目录数据库。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值