IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    减少rman备份对OLTP系统的影响

    小荷发表于 2016-10-20 09:16:00
    love 0

    rman的备份,我们平时总是希望越快越好。

    但是有时候,rman的备份会撑爆HBA卡的流量,严重影响生产系统。在一个大的cluster中,有17个db,当13个db发起rman备份的时候,主机上的HBA卡流量几乎被撑爆了,几乎所有的IO操作都不可进行了。

    所以,我们要想办法让rman“慢”一些,减少备份对生产系统的影响。在mos中,有一篇文档,是将关于减少rman备份对OLTP的影响,How to Minimise the impact of an Online RMAN Backup on an OLTP system (Doc ID 369573.1)。里面讲到了几种方式:

    1. 在standby上备份
    2. Split mirror snapshot backup(存储技术)
    3. BCT(block change tracking)
    4. 使用参数RATE(9i以上)
    5. 使用参数DURATION+MINIMIZE LOAD(10g以上)

    而第5种方式,对于带库的备份,oracle也是不建议使用的。因为它会长时间的hold住磁带。
    catch8e9f10-20-16-51-53

    所以我们平常可能用RATE的参数来限制。RATE的参数解释,在在线文档上说,像掐喉咙(serve as throttle)一样,即限制读取数据文件的吞吐量,又限制写数据文件到磁带的吞吐量。
    catch10-20-16-54-31

    我测试了一下rate参数,可以看到,当我使用rate 15M的时候,确实每个通道的IO流量被限制在了15M以下。可以通过v$backup_async_io/v$backup_sync_io的effective_bytes_per_second字段进行观测:(我用了type=INPUT/OUTPUT,其实直接用AGGREGATE更好)

    RUN { 
    HOST 'echo %time:~0,100%';
    ALLOCATE CHANNEL ch00 TYPE DISK RATE 15m; 
    ALLOCATE CHANNEL ch01 TYPE DISK RATE 15m; 
    ALLOCATE CHANNEL ch02 TYPE DISK RATE 15m;
    ALLOCATE CHANNEL ch03 TYPE DISK RATE 15m;
    BACKUP 
        Full 
        FORMAT 'c:\fullbk_rate_%u_%p_%s.rmn' 
        DATABASE; 
        sql 'alter system archive log current'; 
    RELEASE CHANNEL ch00; 
    RELEASE CHANNEL ch01; 
    RELEASE CHANNEL ch02; 
    RELEASE CHANNEL ch03; 
    HOST 'echo %time:~0,100%';
    }

    catch2f2a10-20-16-54-31

    参考:
    Doc ID 369573.1



沪ICP备19023445号-2号
友情链接