当前位置:  数据库>oracle

RMAN 系列(三) ---- 介质管理问题

    来源: 互联网  发布时间:2017-04-10

    本文导语: Oracle 10g中的RMAN 使用程序主要关注的是将磁盘备份作为介质恢复解决方案的最佳方法。 随着磁盘价格的下跌,大量的存储区网络()已经在很多数据中心找到了永久的存储空间。 随着业务向着价格越来越便宜而容量越来越大...

Oracle 10g中的RMAN 使用程序主要关注的是将磁盘备份作为介质恢复解决方案的最佳方法。 随着磁盘价格的下跌,大量的存储区网络()已经在很多数据中心找到了永久的存储空间。 随着业务向着价格越来越便宜而容量越来越大的磁盘发展,对RMAN的功能(如Flashback)进行了升级,从而可以最有效的利用可用存储空间。

RMAN 备份实用程序是按逻辑执行的过程,而写入到磁盘的操作正是Oracle 数据库所擅长的工作。因此,当Oracle 数据库开始改进磁盘写入功能时,RDBMS也会做相应的工作来改进性能。 

但是在许多情况下,数据库的大小及其位置都使得它无法备份到磁盘。或者仍然存在要简历数据副本或者离站归档的业务需求。因此还是需要写入到老式的磁带设备。

Oracle 数据库的磁带备份需要第三方的辅助设备,这主要是因为市场上流行的连续介质子系统具有完全不同的性质。 RMAN 开发人员通常使用那些大供应商提供的可读写磁带产品,而不去尝试这些不同类型的磁带设备的不同系统调用。

Oracle 拥有自己的介质管理软件解决方案,称为 Oracle 。 OSB 是完全集成的,RMAN 到磁盘的解决方案,它不需要任何第三方供应商的软件插件,但是OSB 不成熟。

 

。现在的数据库平均大小已经达到100GB,并且这个数据还在继续增加。数据库的大小决定了是否需要执行磁带备份操作。即使磁盘价格在迅速下降,但购买很多磁盘需要的花费很大。 磁盘备份的优点在于快速恢复,而磁盘的备份和还原相对较慢。

。通常,全企业备份策略的实现和执行是由中央系统上的人员集中管理的,这样节省了备份的规模和开支,公司也有能力买大容量的磁带盒式设备来存储更多的数据。

可移植性。 为了归档和避免灾难,可以很容易的将一堆磁带离站移动,而硬盘则无法这么方便的传输。

:会导致备份复杂话,尤其是Oracle 数据库的复杂化。 Oracle数据文件,日志文件和控制文件的复杂性意味着我们不能简单的执行一个OS 作业。让它在空闲时间复制文件。 相反,我们必须使数据库做好执行备份的操作,然后通知开始复制,最后重新配置数据库。

使用RMAN可以避免这个数据库的配置,备份操作可以发生在任何时候,任何情况下,不过,要将备份写入集中的磁带备份位置,就必须执行一些特殊的RMAN 配置。

 

通过使用介质管理器,RMAN将数据备份到磁带上。 介质管理器(media manager:MM)是由第三方软件商提供的,它将数据块中的数据流从RMAN通道进程传递到相应的磁带中。 通常,介质服务器位于一个企业网中。 介质管理服务器(Media management Server)是一个集中化系统,在这里可以处理全企业的磁带备份操作。

计算机系统必须安装了介质管理(MM)客户端软件才能使用介质管理器。介质管理客户端软件可以连接MM服务器,并且通过网络传输数据。 如果RMAN要使用MM服务器,还需要另外的软件组件。 安装客户端软件之后,我们还必须为介质管理器安装Oracle 模块。 Oracle 模块(Oracle Module)是一个用于Oracle RDMBS 的软件插件,它可以连接RMAN与客户端管理软件,后者可以把数据传送到MM服务器。 Oracle 的这个插件也称为介质管理库(Media management Library: MML).

介质管理器是我们使用的整个备份系统中的一个独立子系统。:(MML), 和 。MM 服务器有多种组件,这些组件的规范由供应商提供,所有的MM服务器都必须具有一些相同的组件。

是MM服务器上的信息数据库,关于, 和 备份完成时,,句柄(Handle)是使用RMAN执行备份操作时创建的备份片名称。 ,句柄就是物理文件名。,介质管理器目录中使用的句柄就是备份所在的磁带位置。

RMAN 完成磁带备份操作时会向管理器提供句柄名,介质管理器把该句柄记录在目录中。。随后,介质管理器查找这个句柄,将该句柄与指定磁带关联在一起,同时判断磁带是否有效。 如果磁带有效,介质管理器会使用这个磁带,并且开始将数据流传送回RMAN,这样就可以重新构建数据文件。

 

除了 介质管理器目录 以外,MM 管理器还包含两个基本组件:

(1) 设备代理程序(Device agent):设备代理程序是负责使用实际磁带设备并在该设备上传送数据的组件

(2) 自动机器接口(Robotic Interface): 自动机器接口控制所有自动机器的软件,这些自动机器负责在磁带满时或在请求写入已填满的磁带时更换磁带。

Oracle 中的RMAN 不了解这些组件的存在。 RMAN 只是简单地把命令请求发送给MML,随后MM 软件会处理相应的所有事件。 不过,由于备份和恢复的成功取决于这些组件,所以熟悉这些软件组件也是至关重要的。使用RMAN出现的问题大多数都与设备代理程序或自动机器接口有关,但从RMAN 接口几乎察觉不到这些问题。

 

 MML 与 MM 客户端软件和MM 服务器软件一样是由同一个供应商提供的,但是我们需要单独购买MML 和取得许可。

  这个集成实际上非常简单:分配磁带通道时,Oracle 加载一个名为libobk.so 的文件。 这个文件位于ORACLE_HOM/BIN 目录中,它只是一个要使用的MML 文件的符号连接。 在Windows平台上,Oracle 会在搜索路径中查找一个名为orasbt.dll 的库文件。 不论是哪一种介质管理器,在介质管理DDL 文件都名为: orasbt.dll, 介质管理器通常将其写入到WINDOWS/system32 目录中。 如果这个文件没有位于该目录中,在系��路径环境变量中有一个能够查找到orasbt.dll 文件的搜索路径。

RMAN> run

2> {

3> allocate channel c1 type 'sbt_tape'

4> PARMS="SBT_LIBRARY=oracle.disksbt,

5> ENV=(BACKUP_DIR=f:/BACKUP/)";

6> BACKUP DATABASE FORMAT='%U';}

释放的通道: ORA_DISK_1

分配的通道: c1

通道 c1: SID=21 设备类型=SBT_TAPE

启动 backup 于 18-6月 -10

通道 c1: 正在启动全部数据文件备份集

通道 c1: 正在指定备份集内的数据文件

输入数据文件: 文件号=00001 名称=D:/APP/ADMINISTRATOR/ORADATA/ORCL/SYSTEM01.DBF

输入数据文件: 文件号=00002 名称=D:/APP/ADMINISTRATOR/ORADATA/ORCL/SYSAUX01.DBF

输入数据文件: 文件号=00003 名称=D:/APP/ADMINISTRATOR/ORADATA/ORCL/UNDOTBS01.DBF

输入数据文件: 文件号=00004 名称=D:/APP/ADMINISTRATOR/ORADATA/ORCL/USERS01.DBF

通道 c1: 正在启动段 1 于 18-6月 -10

通道 c1: 已完成段 1 于 18-6月 -10

段句柄=06lghd3f_1_1 标记=TAG20100618T085926 注释=API Version 2.0,MMS Version 8.1

.3.0

通道 c1: 备份集已完成, 经过时间:00:01:35

通道 c1: 正在启动全部数据文件备份集

通道 c1: 正在指定备份集内的数据文件

备份集内包括当前控制文件

备份集内包括当前的 SPFILE

通道 c1: 正在启动段 1 于 18-6月 -10

通道 c1: 已完成段 1 于 18-6月 -10

段句柄=07lghd6e_1_1 标记=TAG20100618T085926 注释=API Version 2.0,MMS Version 8.1

.3.0

通道 c1: 备份集已完成, 经过时间:00:00:01

完成 backup 于 18-6月 -10

释放的通道: c1

Configure channel device type 'SBT_TAPE' 

PARMS 'SBT_LIBRARY=oracle.disksbt,ENV=(BACKUP_DIR=f:/BACKUP/)';

如果视图分析介质管理器备份解决方案可能存在的问题或无法使备份工作时,上面的的示例就是一个很好的测试方法。 通过分配一个‘伪造的’磁带通道,可以测试RMAN 配置是否正确。

如果要在产品环境中执行磁盘备份操作,就分配磁盘通道。 这是因为RMAN为磁带而不是磁盘分配内存缓冲区,因而磁盘写操作的速度远大于磁带写速度这一点没有体现。

 

链接Oracle 与 MML时,意味着RMAN 可以通过它来传递命令以连接MML,或者进一步说,在数据库服务器上安装的MM 客户端软件。

要指定MM 服务器,我们必须在RMAN 会话中传递指定服务器名的环境变量。 具体来讲,在分配磁带通道时,我们将服务器名指定为环境变量。 在上面的示例中,我们用allocate channel 命令的PARMS 选项来传递环境变量。不同的MM 产品具有不同的环境变量。 如Veritas NetBackup 要求使用NB_ORA_SERV 参数。

Allocate channel t1 type 'sbt_tape' PARMS="ENV=(NB_ORA_SERV=storage1)";

这里的MM服务器名称就是storage1,同时数据库服务器在MM 服务器中已注册并具有写磁带设备的权限。

除了服务器名之外,我们还可以在通道分配时传递其他一些参数来利用服务器上的管理功能。 如Netbackup 允许我们指定用于备份操作的类或调度,而EMC Networker 允许我们指定资源池。


    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • rman备份脚本和rman增量备份脚本分享
  • Oracle数据库备份和恢复工具 RMan
  • catalog方式的rman备份与恢复示例
  • rman配置及rman常用命令操作
  • win平台oracle rman备份和删除dg备库归档日志脚本
  • linux自动运行rman增量备份脚本
  • 9i下RMAN的备份及恢复步骤
  • Oracle相关:Rman Crosscheck删除失效归档
  • ORACLE 数据库RMAN备份恢复
  • rman恢复方案和oracle异机恢复
  • Oracle RMAN快速入门指南


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3