一、RMAN的概念与体系结构
Recovery Manager(RMAN)是一种用于备份(backup)、还原(restore)和恢复(recover)数据库的 Oracle 工具。RMAN只能用于ORACLE8或更高的版本中。它能够备份整个数据库或数据库部件,如表空间、数据文件、控制文件、归档文件以及Spfile参数文件。RMAN也允许您进行增量数据块级别的备份,增量RMAN备份是时间和空间有效的,因为他们只备份自上次备份以来有变化的那些数据块。而且,通过RMAN提供的接口,第三方的备份与恢复软件如veritas将提供更强大的备份与恢复的管理功能。
通过RMAN,也提供了其它更多功能,如数据库的克隆、采用RMAN建立备用数据库、利用RMAN备份与移动裸设备(RAW)上的文件等工作将变得更方便简单。9i的RMAN通过增强的自动配置与管理功能,以及特有的块级别的恢复,将使备份与恢复工作变得更加快捷与完美。9i的RMAN有如下特征特性:
·自动的备份与恢复
·方便的备份归档日志
·自动检测新的数据文件
·支持增量备份
·最大限度的减少备份与恢复的错误
·减少恢复的时间
·在热备份中不会产生额外的redo日志
·腐烂数据块的自动检测
·并行的备份与恢复操作
·在线备份时,表空间不用置于备份模式
可以看到,在以上的一些特性中,显示了RMAN强大的功能与好处,以上功能的实现,是因为RMAN是块级别的备份与恢复,备份与恢复发生在数据库块级别,可以通过比较数据块而获得一致性的数据块,可以避免备份没有用过的块,可以检验块是否腐烂等块级别的问题。
RMAN的体系结构说明如下:
1、RMAN 工具
更多精彩内容:http://www.bianceng.cn/database/Oracle/
也就是RMAN 命令,起源于Oracle 版本8,一般位于$ORACLE_HOME/bin 目录下,可以通过运行rman这个命令来启动RMAN 工具,用于备份与恢复的接口。
2、服务进程
RMAN 的服务进程是一个后台进程,用于与RMAN工具与数据库之间的通信,也用于RMAN 工具与磁盘/磁带等I/O 设置之间的通信,服务进程负责备份与恢复的所有工作,在如下情况将产生一个服务进程
·当连接到目标数据库
·分配一个新的通道
3、通道
通道是服务进程与I/O 设备之前读写的途径,一个通道将对应一个服务进程,在分配通道时,需要考虑I/O 设备的类型,I/O 并发处理的能力,I/O 设备能创建的文件的大小,数据库文件最大的读速率,最大的打开文件数目等因素
4、目标数据库
就是RMAN 进行备份与恢复的数据库,RMAN 可以备份除了联机日志,pfile,密码文件之外的数据文件,控制文件,归档日志,spfile
5、恢复目录
用来保存备份与恢复信息的一个数据库,不建议创建在目标数据库上,利用恢复目录可以同时管理多个目标数据库,存储更多的备份信息,可以存储备份脚本。如果不采用恢复目录,可以采用控制文件来代替恢复目录,oracle 9i因为控制文件自动备份的功能,利用控制文件很大程度上可以取代恢复目录。
6、媒体管理层
Media Management Layer (MML)是第三方工具或软件,用于管理对磁带的读写与文件的跟踪管理。如果你想直接通过RMAN 备份到磁带上,就必须配置媒体管理层,媒体管理层的工具如备份软件可以调用RMAN 来进行备份与恢复。
7、备份,备份集与备份片
当发出backup命令的时候,RMAN 将创建一个完成的备份,包含一个到多个备份集,备份集是一个逻辑结构,包含一组的物理文件。这些物理文件就是对应的备份片。备份片是最基本的物理结构,可以产生在磁盘或者磁带上,可以包含目标数据库的数据文件,控制文件,归档日志与spfile文件。
备份集与备份片有如下规定:
(1)一个数据文件不能跨越一个备份集,但是能跨越备份片
(2)数据文件,控制文件能保存在同样的备份集上,但是不能与归档日志保存在同样的备份集上