使用RMAN进行Oracle备份

数据库 Oracle
通过使用RMAN(备份与恢复管理器),可以实现 Oracle数据库的备份,下面就让我们来一起了解一下这种Oracle备份 方法。

Oracle备份有很多种的方法,下面为您介绍的是通过使用RMAN(备份与恢复管理器)实现 Oracle数据库的备份的方法,该方法供您参考,希望对您有所帮助。

i.使用RMAN进行备份

Recovery manager(RMAN)是ORACLE提供的DBA工具,用语管理备份和恢复操作。RMAN只能用于ORACLE8或更高的版本中。它能够备份整个数据库或数据库部件,其中包括表空间、数据文件,控制文件和归档文件。RMAN可以按要求存取和执行备份和恢复。

RMAN备份有如下优点
☆支持在线热备份
☆支持多级增量备份
☆支持并行备份、恢复
☆减少所需要备份量
☆备份、恢复使用简单

重要的是,使用恢复管理器允许您进行增量数据块级的Oracle备份(这个与导出/导入的增量截然不同)。增量RMAN备份是时间和空间有效的,因为他们只备份自上次备份以来有变化的那些数据块。另一个空间有效的RMAN特性是它只备份数据文件中使用的数据块,忽略空的,未用的数据块,这个对于预分配空间的表空间有很大的好处。从9i开始,还增加了RMAN的数据块级别的恢复,可以进一步减少数据库恢复时间。

RMAN支持以下不同类型的备份

FULL                        数据库全备份,包括所有的数据块
INCREMENTAL     增量备份,只备份自上次增量备份以来修改过的数据块。需要一个0级的增量作为增量的基础,可以支持5级增量。
OPEN                        在数据库打开的时候使用
CLOSED                    在数据库安装(MOUNT)但不打开的时候备份,关闭备份可以是CONSISTENT或IN CONSISTENT类型的。
CONSISTENT          在数据库安装,单不打开,并且在安装之前数据库被彻底关闭(而不是被破坏或异常退出)时使用。CONSISTENT备份可以简单的进行复原(RESTORE)而不是恢复(RECOVER)
INCONSISTENT             在数据库打开或安装(但不打开)时使用。在该数据库正常关闭或崩溃后, INCONSISTENT备份需要恢复。

理解BACKUP,RESTORE,RECOVER命令,这是RMAN最基本的三个命令,可以进行数据库的备份,复原以及恢复操作。理解恢复目录,RMAN可以在没有恢复目录(NOCATALOG)下运行,这个时候备份信息保存在控制文件。保存在控制文件的备份信息是很危险的,如果控制文件的破坏将导致备份信息的丢失与恢复的失败,而且,没有恢复目录,很多RMAN的命令将不被支持。所以对于重要的数据库,建议创建恢复目录,恢复目录也是一个数据库,只不过这个数据库用来保存备份信息,一个恢复目录可以用来备份多个数据库。

创建RMAN目录,以下步骤说明了在一个数据库中尽力RMAN目录的过程。

a.为目录创建一个单独的表空间SQL>Create tablespace tools datafile ‘fielname’ size 50m;
b.创建RMAN用户SQL>Create user RMAN identified by RMAN default tablespace tools temporary tablespace temp;
c.给RMAN授予权限SQL>Grant connect , resource , recovery_catalog_owner to rman;
d.打开RMAN $>RMAN
e.连接数据库RMAN>connect catalog rman/rman
f.创建恢复目录RMAN>Create catalog tablespace rman

注册目标数据库,恢复目录创建成功后,就可以注册目标数据库了,目标数据库就是需要备份的数据库,一个恢复目录可以注册多个目标数据库,注册目标数据库的命令为:$>RMAN target internal/password catalog rman/rman@rcdb; RMAN>Register database; 数据库注册完成,就可以用RMAN来进行Oracle备份了,更多命令请参考ORACLE联机手册或《ORACLE8i备份与恢复手册》。

RMAN使用脚本来备份数据库,以下是RMAN进行备份的几个例子。
a.备份整个数据库 backup full tag ‘basicdb’ format ‘/bak/oradata/full_%u_%s_%p’ database;
b.备份一个表空间 backup tag ‘tsuser’ format ‘/bak/oradata/tsuser_%u_%s_%p’ tablespace users;
c.备份归档日志 backup tag ‘alog’ format ‘/bak/archivebak/arcbak_%u_%s_%p’ archivelog all delete input;

ii.维护RMAN

RMAN的维护主要分为几个方面

1、查看RMAN的信息
         检查现有备份 
             RMAN>list backup
         列出过期备份 
             RMAN>report obsolete
         删除过期的备份 
             RMAN>allocate channel for maintenance type disk;
             RMAN>change backupset id delete;
             RMAN>release channel;
2、同步或重置RMAN 如果目标数据库物理对象发生了变化,如添加了一个数据文件,需要用如下命令同步: RMAN>resync catalog; 如果目标数据库reset了数据库,需要用如下命令同步RMAN>reset database; 当手工删除了数据库的归档文件后,要执行以下脚本同步RMAN>allocate channel for maintenance type disk;
RMAN> change archivelog all crosscheck; RMAN>release channel; 当手工删除了数据库的RMAN备份后,要执行以下脚本来同步 RMAN>allocate channel for maintenance type disk; RMAN>crosscheck backup; RMAN>delete expired backup;
 

 

【编辑推荐】

Oracle EXP/IMP备份简介

教您如何实现ORACLE备份

Oracle控制文件的恢复

oracle备份命令使用实例

Oracle单行日期函数简介

 

责任编辑:段燃 来源: 互联网
相关推荐

2010-10-26 13:30:25

oracle RMAN

2017-06-27 14:58:21

备份数据库Oracle

2010-04-26 17:53:21

Oracle实战RMA

2010-05-10 10:19:28

Oracle实战RMA

2010-03-29 16:16:59

Oracle exp备

2010-03-31 10:39:40

RMANOracle

2023-08-25 09:39:38

数据库Oracle

2017-06-06 08:10:00

Oracle

2010-10-26 10:02:05

oracle备份命令

2020-09-27 10:06:16

Btrfs增量备份

2009-10-22 09:32:51

ghostlinux系统备份

2022-01-07 08:14:53

Convert Datoracle数据库

2022-06-17 06:23:23

Oracle压缩类型

2010-04-27 10:04:52

Oracle rman

2013-06-08 14:50:10

rman数据恢复

2011-08-15 22:51:34

Oraclerman

2010-04-19 13:15:00

Oracle数据库

2013-06-28 14:38:02

2015-01-04 10:15:49

Linux备份

2019-05-17 08:24:11

LinuxLinux备份rsync命令
点赞
收藏

51CTO技术栈公众号