TSM在恢复oracle时,怎么设置rman的备份集和备份片,来使恢复效率更高?

在使用TSM恢复oracle数据文件时,发现tsm会遍历一边备份集,然后恢复文件,如果备份集太大,那么所花时间就较长,然后经过测试调整备份集之后,效率是有所提高,那么备份集和备份片到底如何优化会使得恢复效率更高?

参与33

2同行回答

nkj827nkj827  项目经理 , 长春长信华天
在默认情况下,一种类型的文件在备份集中都会存成一个备份片段。不过考虑到如果文件较大,生成的备份片段可能也较大,甚至超出操作系统限制(不稀奇,比如Windows平台下FAT32文件系统,单个文件最大不能超过4GB),在你真正创建备份策略之前,备份片段文件大小显然也得在考虑范围之内。RMA...显示全部

在默认情况下,一种类型的文件在备份集中都会存成一个备份片段。不过考虑到如果文件较大,生成的备份片段可能也较大,甚至超出操作系统限制(不稀奇,比如Windows平台下FAT32文件系统,单个文件最大不能超过4GB),在你真正创建备份策略之前,备份片段文件大小显然也得在考虑范围之内。
RMAN在分配通道时有一个参数MAXPIECESIZE,就是专门用来指定备份片段大小的,例如,备份SYSTEM表空间,指定单个备份片段最大不能超过10MB
单个备份集的最大值可以在执行备份命令(或分配通道)时通过MAXSETSIZE参数指定,比如:
RMAN> BACKUP DATABASE MAXSETSIZE=100m;
MAXSETSIZE参数指定的是单个备份集的最大值,与备份片段无关,不过默认情况下,一个备份集对应一个备份片段,因此也相当于指定了备份片段的大小,但是直接指定MAXSETSIZE参数限定备份集大小并非在所有情况下都适用,如果要备份的数据文件中,任意一个数据文件超出了指定参数值,则备份就会失败(前面示例命令执行肯定失败,因为默认情况下SYSTEM表空间数据文件就接近300MB)。因此,对于在实际应用中需要限制生成文件大小的情况,更多还是会通过MAXPIECESIZE参数限制备份片段,而不会直接限制备份集。

收起
系统集成 · 2017-10-18
Jerry MikuJerry Miku  其它 , The Global 500
在使用TSM恢复oracle数据文件时,发现tsm会遍历一边备份集,然后恢复文件,如果备份集太大,那么所花时间就较长,然后经过测试调整备份集之后,效率是有所提高,那么备份集和备份片到底如何优化会使得恢复效率更高?针对您的提问,我帮您修正几个地方:第一个是【在使用TSM恢复oracle数据文...显示全部

在使用TSM恢复oracle数据文件时,发现tsm会遍历一边备份集,然后恢复文件,如果备份集太大,那么所花时间就较长,然后经过测试调整备份集之后,效率是有所提高,那么备份集和备份片到底如何优化会使得恢复效率更高?

针对您的提问,我帮您修正几个地方:
第一个是【在使用TSM恢复oracle数据文件时,发现tsm会遍历一边备份集】

    备份软件在这个阶段,并不是去遍历备份集,而是去备份系统元数据(通常我们也叫它index)内遍历这个备份的索引信息,通过索引信息结合你的恢复条件定位出使用那些备份片、这些备份片在哪些磁带上。

第二个是【如果备份集太大,那么所花时间就较长】

    基于第一个的理解,备份集大小并不会明显影响恢复时BACKUP SERVER遍历索引的速度,而是主要影响磁带机读取备份片的速度。
    

备份的调优涉及很多因素,比如业务机配置、存储、备份软件、备份配置、备份存储、网络等。
分享下我原来写过的备份的调优心得,恢复调优和备份调优思路差不多。

使用TSM备份oracle,怎么设置通道会比较好?

   不管是哪一款备份软件,对备份数据备份流程的控制尤其重要,特别是采用消重技术的备份。对备份数据的控制效用将直接影响消重性能。消重技术以变长、定长两种为例,顾名思义变长是可以根据数据长度动态调整切片长度(如EMC DataDomain),定长仅仅是以固定长度对数据进行切片。切片完成后,片(piece)的命中率直接决定消重性能。piece的命中率越高,消重越明显。因此如何控制备份片(backup piece)单一度且相似度成为重点。我们知道Oracle的Rman脚本里,有一个fileperset参数来控制每一个backup piece里会包含多少个data file。设想一下,如果fileperset越高,那每个backup piece就会包含更多的data file,backup piece的杂糅度就会越高(data file会被混乱随机的组成一个backup piece,并不是每次都按照同一个顺序拟成),那么消重切片后piece的重复率必然低。综合分析,一个合理的fileperset值将有效提升消重效率,fileperset越小越好,理论为1最好(如果没有多路复用的情况,一个流会话会占用一个备份设备)。

  接下来关注备份通道数,Oracle的备份效率与数据结构类型、数据大小以及备份配置等息息相关。如何合理规划备份通道数?关于此问题,我们需要了解一个概念------多路复用(multiplexing)。这个功能能够让多个oracle channel的备份流写入一个磁带机,如rman里分配了四个通道,但备份只有一个磁带机在跑。对于单个磁带机来讲,连续、大量的数据流具有更高的写入效率,如果单个backup piece数据量偏小就需要适当提高multiplexing的复用效率:允许x个会话同时写入该设备(此操作提高数据杂糅度会降低后端消重效率)。对于Oracle而言,如果数据库性能允许,更多的channel会带来更高的数据读取效率,备份速度越快。然而考虑到备份对业务的影响以及并发性能的限制,最佳的通道数需要多次调整尝试。

  除此之外若是oracle的消重备份,如果设置rman读取datafile时的读取块大小以及备份软件写数据的块大小以及设备消重的最小长度呈倍数关系,在消重效率和备份速率上都会有一定提升。
收起
IT其它 · 2017-10-20
浏览3995
  • 我们需要了解一个概念------多路复用(multiplexing)。这个功能能够让多个oracle channel的备份流写入一个磁带机,如rman里分配了四个通道,但备份只有一个磁带机在跑。 -----关于您提到的这个多路复用,我是不是可以理解为,server端只有一个驱动器,rman端可分配四个通道? -----我试过,rman分配四个通道的话,是需要四个驱动器同时mount带备份的。TSM server端如果少于四个驱动器,备份会失败。 是需要做什么配置?能实现多路复用吗?
    2017-10-26
  • 抱歉,最近很忙,没有上论坛。在Oracle Rman里开4个channel,只是开启了4个数据流,但对于磁带机来说,多少数据流都可以写入到一个磁带机(只用考虑复用效率的问题而已)。TSM里的概念我绕不过来,接触的也比较少,帮不到你了。在EMC Networker里在磁带机的属性里有session的设置,如果都设置成1就会出现你说的这种问题。如果都设置成4,则会根据Rman的数据流数量做均衡。不过多路复用,是现在备份软件的标配了,绝大部分产品都可以支持,可以咨询下support,应该都可以设置的。
    2017-11-08

提问者

daiwu
系统工程师深圳某公司
擅长领域: 服务器AIXUnix

问题来自

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2017-10-18
  • 关注会员:4 人
  • 问题浏览:7096
  • 最近回答:2017-10-20
  • X社区推广