Recoverymanager(RMAN)是ORACLE 8i后提供的备份,恢复工具。它能够备份整个数据库或数据库部件,其中包括表空间,数据文件,控制文件和归档文件。RMAN可以按要求存取和执行备份和恢复。
RMAN 组件: 目标数据库(target database), 服务器进程, 通道(Channel), RMAN资料库(Recovery ManagerRepository) 和RMAN 元数据(Recovery Manager Metadata), 恢复目录, 介质管理层(Media Management Layer), RMAN 包(Recovery Manager package)
连接备份目标数据库;
查看当前RMAN配置情况;
一 实验操作:修改RMAN配置;
设置冗余策略。当备份对象拥有多个备份集时,不符合冗余策略是备份集将被标记为obsolete,等待管理员清除。
RMAN>configureretention policy to recovery window of 7 days;
(恢复窗口型冗余策略。当前设定为 7 天,即任何超过最近七天的数据库备份将被标记为 obsolete)
RMAN>configureretention policy to redundancy 2;
(备份镜像型冗余策略。当前设定为 2 份,即对同一备份对象最大备份集数量为 2 份。超过 2 份,最老的备份集被标记为 obsolete)
RMAN>configuredefault device type to sbt;
(是指定所有 I/O 操作的设备类型是硬盘或者磁带,默认值是硬盘)
----强制数据库在备份文件或者执行改变数据库结构的命令之后将控制文件自动备份,默认值为关闭;
RMAN>configurecontrolfile autoback on;
----配置数据库设备类型的并行度;
RMAN>configuredevice type disk parallelism 2;
----将RMAN配置还原为默认值
RMAN>configuredefault type clear;
二 实验RMAN备份
实验操作:常规备份操作
在归档模式下,DBA 通过 RMAN 的 backup 指令对目标对象执行多种策略的热备份。注意:我们很少使用 RMAN 进行冷备份。
Step1 :全库热备份(Whole Database )
RMAN> backupdatabase;
Step2 :备份指定表空间(Tablespaces )
RMAN> backuptablespace users;
Step3 :备份指定数据文件(Datafiles )
RMAN> backupdatafile 4;
Step4 :备份控制文件
RMAN> backupcurrent controlfile;
Step5 :备份归档日志文件(Archived logs )
RMAN> backuparchivelog all;
Step6 :备份归档日志文件,同时删除归档
RMAN> backuparchivelog all delete input;
Step7 :全库备份,并加上所有归档日志文件
RMAN> backupdatabase plus archivelog;
Step8 :指定备份集存放的位置
默认情况下,如果设置了闪回恢复区(db_recovery_file_dest 参数指定),备份集将自动存放在其中。
如果想将其存放到指定位置,需要使用 format 命令。
RMAN> backupformat ‘/home/oracle/users.bak‘ tablespace users;
三 管理备份集
在RMAN中,DBA可以通过list命令查看其中存放的备份集信息;
查看全库备份情况
RMAN>listbackup of database;
查看指定表空间备份情况;
RMAN>listbackup of tablespace users;
查看指定数据文件备份情况
RMAN> listbackup of datafile 4;
查看控制文件备份情况
RMAN> listbackup of controlfile;
查看归档日志备份情况
RMAN> listbackup of archivelog all;