ORACLE_OCP之RMAN故障排除和优化

ORACLE_OCP之RMAN故障排除和优化

  • 文章目标
    • 解释RMAN消息输出(已经在前面讲过,这里不做赘述)
    • 应用最佳实践调整原则
    • 诊断RMAN性能问题

一、处理RMAN命令

  • 在编译阶段,RMAN :
    • 识别文件
    • 构造由说明组成的作业步骤
    • 在执行阶段,RMAN :
      • 将每个工作步骤提交到可用通道
      • 连接到目标的单独OCI (rman target / )
        • Oracle前台进程(serverprocess)执行数据移动
          • 读取数据:来自磁盘或磁带的I / O
          • 处理数据:复制缓冲区,验证,加密和压缩
          • 写入数据:I / O到磁盘或磁带(这里还是用到了某些其他进程)
      • 监控执行

二、RMAN故障排除

  • 了解每个组件的性能。
  • 使用BACKUP VALIDATE命令分析读取和处理步骤。
  • 使用RESTORE VALIDATE命令分析读取和处理步骤。
    在这里插入图片描述

三、诊断性能瓶颈

  • 在V B A C K U P A S Y N C I O 或 V BACKUP_ASYNC_IO或V BACKUPASYNCIOVBACKUP_SYNC_IO中的AGGREGATE行中查询EFFECTIVE_BYTES_PER_SECOND列。
  • 如果EFFECTIVE_BYTES_PER_SECOND <存储介质吞吐量中有值,请执行BACKUP VALIDATE命令以获取其他信息。

四、诊断性能瓶颈:读取阶段

  • 如果BACKUP VALIDATE time〜=实际备份时间,则读取阶段可能是瓶颈。

  • 实施适当的RMAN多路复用和缓冲区使用准则。

  • 研究性能“较慢”的文件:查找具有最高LONG_WAITS / IO_COUNT比率的数据文件.

    • 如果是ASM,请改善相关的磁盘参数(大小或者使用高性能设备)或重新平衡磁盘。
    • 将文件移动到新磁盘
    • 或将“慢速”文件进行多路复用。
  • 分析对磁盘的写入过程:

    • 在磁盘上创建数据文件并计时操作。
    • 通过调用DBMS_BACKUP_RESTORE.SETPARMS函数来调用写入。

五、诊断性能瓶颈:写入或复制阶段

  • 如果BACKUP VALIDATE时间小于实际备份时间,则缓冲区复制或写入存储可能是瓶颈。
  • 实施备份压缩和加密准则:
    • 验证添加通道后,未压缩备份性能是否可以正确扩展。
    • 使用低或中设置。
    • 使用AES128加密算法。
  • 如果是磁带备份,请检查媒体管理(MML)设置:
    • TCP / IP缓冲区大小
    • 介质管理客户端/服务器缓冲区大小
    • 客户端/套接字超时(针对会话)
    • 介质服务器硬件,与磁带的连接
    • 启用磁带压缩(但不启用RMAN压缩)

六、使用动态性能视图诊断RMAN性能

  • 使用以下视图确定RMAN备份和还原操作在哪里遇到性能问题:

在这里插入图片描述

七、监视RMAN作业进度

  • 通过查询V $ SESSION_LONGOPS监视备份和还原操作的进度.
SQL> SELECT SID,SERIAL#,CONTEXT,SOFAR,TOTALWORK,
  2  ROUND(SOFAR/TOTALWORK*100,2) "%_COMPLETE"
  3  FROM V$SESSION_LONGOPS
  4  WHERE OPNAME LIKE 'RMAN%'
  5  AND OPNAME NOT LIKE '%aggregate%'
  6  AND TOTALWORK != 0
  7  AND SOFAR <> TOTALWORK;

SID SERIAL# CONTEXT   SOFAR TOTALWORK %_COMPLETE
--- ------- ------- ------- --------- ----------
 13      75       1    9470     15360      61.65
 12      81       1   15871     28160      56.36

八、识别备份和还原瓶颈

  • 以下视图可用于确定瓶颈的来源并查看备份作业的进度:
    • V$BACKUP_SYNC_IO
    • V$BACKUP_ASYNC_IO
  • 存在以下行用于备份或还原:
    • 每个数据文件一行
    • 数据文件汇总一行
    • 每个备份片一行

九、异步I / O瓶颈

  • 使用V$BACKUP_ASYNC_IO监视异步I / O.
  • LONG_WAITS与IO_COUNT之比最大的文件可能是瓶颈.
    • IO_COUNT:对文件执行的I/O数
    • LONG_WAITS:备份/还原过程指示OS等待I/O完成的次数
  • 等待时间应为零以避免瓶颈.
    • SHORT_WAIT_TIME_TOTAL
    • LONG_WAIT_TIME_TOTAL

十、同步I / O瓶颈

  • 一般认为同步I/O被视为瓶颈.
  • 从V$BACKUP_SYNC_IO查询DISCRETE_BYTES_PER_SECOND列以查看I / O速率.
    • 将此速率与设备的最大速率进行比较。
    • 如果速率低于设备指定的速率,则这是一个调整机会。

十一、调整RMAN备份性能

  • 要调整RMAN备份性能,请按照下列步骤操作:
    • 1.从已配置和分配的通道中删除RATE设置。RATE参数用于设置RMAN每秒在通道上读取的最大字节数(默认),千字节(K),兆字节(M)或千兆字节(G)。 它设置了读取字节的上限,这样RMAN不会消耗过多的磁盘带宽并降低性能。 如果您的备份没有流式传输到磁带,请确保未在ALLOCATE CHANNEL或CONFIGURE CHANNEL命令上设置RATE参数。
    • 2.如果使用同步磁盘I / O,则设置DBWR_IO_SLAVES参数。
    • 3.设置LARGE_POOL_SIZE初始化参数。
    • 4.调整RMAN的读取,写入和复制阶段。

十二、备份集的并行化

  • 为了提高性能,请分配多个通道并将文件分配给特定的通道.

在这里插入图片描述

十三、设定LARGE_POOL_SIZE

  • 如果未设置LARGE_POOL_SIZE,则Oracle服务器将尝试从共享池中获取内存。
  • 如果LARGE_POOL_SIZE不够大,则服务器不会从共享池中分配缓冲区。
  • 如果服务器无法获得足够的内存,它将从本地进程内存中分配缓冲区。
  • Oracle服务器将一条消息写入警报日志,指示该备份使用了同步I / O

ksfqxcre: failure to allocate shared memory means sync
I/O will be used whenever async I/O to file not
supported natively

十四、RMAN Multiplexing多路复用

  • 复用级别:备份期间随时可通过一个通道读取的最大文件数
    • Min(MAXOPENFILES, FILESPERSET)
    • Default for MAXOPENFILES is 8
    • Default for FILESPERSET default is 64
  • MAXOPENFILES确定输入缓冲区的数量和大小
    • 启用了从PGA分配的所有缓冲区,除非磁盘或磁带I / O有相关的从属属性设置。

在这里插入图片描述

十五、RMAN Multiplexing

  • 对于读操作:
    在这里插入图片描述
  • 对于写操作,每个通道分配有四个每个1 MB的输出缓冲区。

十六、恢复和恢复性能:最佳实践

  • 通过使用增量备份来减少要应用的归档日志的数量。
  • 使用块介质恢复来隔离(修复)坏块。
  • 在磁盘上保留足够数量的归档日志。
  • 增加RMAN缓冲区内存使用率。
  • 调整数据库的I / O,DBWR性能和CPU利用率。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值