Oracle拥有自己的介质管理软件解决方案,称为安全备份(Oracle Secure Backup 简写 OSB)OSB是完全集成的。9I中带有Legato Networker产品的精简版本,Legato Single Server Version(LSSV)。LSSV只允许备份到本地磁带驱动器。10GR2开始不再使用LSSV,不再和数据库一起提供。需要从介质管理供应商处购买或从Oracle处下载OSB。
RMAN和介质管理器
通过使用介质管理器,RMAN将数据备份到磁带上。介质管理器(Media Manager)由第三方软件商提供,它将数据块中的数据流从RMAN通道进程传递到相应的磁带中。
计算机系统必需安装了介质管理(MM)客户端才能使用介质管理器。介质管理的客户端可以连接MM服务器,并通过网络传送数据。还必须为介质管理器安装Oracle模块。Oracle模块(Oracle Moudle)是一个用于Oracle RDBMS的软件插件,它可以连接RMAN与客户端介质管理软,后者可以把数据传送到MM服务器。Oracle的插件名称是介质管理库(MEDIA MANAGEMENT LIBRARY 简写MML)。
介质管理器目录
介质管理目录是整个备份中的一个独立的子系统。介质管理器由三个基本的组件:与Oracle结合的介质管理库、介质管理客户端和介质管理服务器。MM服务器具有多种组件,这些组件的规范是由供应商提供。但所有MM服务器都必须具备一些相同的组件,其中最重要的组件是介质管理目录。
介质管理目录是MM服务器上的信息数据库,它保存了关于物理磁带本身、磁带的访问权限和磁带存储内容相关信息。RMAN完成磁带备份操作时会向介质管理目录提供句柄名,介质管理器把句柄记录在目录中。需要执行还原操作时,RMAN会基于自身的目录向介质管理器请求指定的句柄。介质管理器查找这个句柄,将该句柄与指定的磁带关联一起,同时判断磁带有效性。如果有效,可以重新构建数据文件。
介质管理器其它组件
除了介质管理目录处,MM服务器还包含两个基本的组件:
设备代理程序(device agent):负责使用实际磁带设备并传送数据的组件。
自动机器接口(robotic interface):负责在请求写入已填满时,更换磁带。
RMAN不了解这些组件的存在。RMAN只是简单地把命令请求发送给MML,随后,MM软件会处理相应的所有事件。
介质管理库
MML是一个库文件,它将RMAN的一致性的备份或还原请求解释为在介质管理服务器上的体的系统调用,以实现要求的操作。MML与MM客户端软件和MM服务器软件一样是由同一个供应商提供的,但是我们需要单独购买MML和取得许可。
首次分配磁带通道时,MML作为一个集成的库文件加载到Oracle内存空间, 它是RDBMS软件的逻辑部分,RMAN可以生成正确的MM客户端软件调用。集成过程:分配磁带通道时,Oracle加载ORACLE_HOME/bin目录下的libobk.so的文件。它只是一个到要使用的MML文件的符号连接。在Windows上,会搜索orasbt.dll。
Eg:使用Oracle默认SBT接口测试磁带通道
RMAN> connect target RMAN> run{ > Allocate channel t1 type ‘sbt_tape’ > parms=”sbt_library=oracle.disksbt,env=(backup_dir=/un1/backup)”; > backup dataifle 1 format =’%U’; > }
|
如果试图分析介质管理器备份解决方案可能存在的问题或无法备份工作时,上面是一个有效的测试。
SBT API
RMAN可以不受影响地使用不同的介质管理器,这是因为不管加载了哪一种MML,RMAN都会发送相同的命令。Oracle使用SBT API来开发RMAN。SBT API是一种通用API。提供给Oracle数据库备份操作编码集成产品的第三方软件商,是RMAN向介质管理器发送命令的工具。