暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

RMAN 备份的成败

恩恩霸 2025-08-17
264

在 Oracle 环境里,RMAN 备份的成败从来都不是一句“backup database 成功”就能盖棺论定。真正的“关键指标(KPI)”必须同时回答四个问题:
1. 备份有没有在规定时间内完成?
2. 备份数据能不能在灾难场景下恢复?
3. 备份过程对生产库的冲击是否在可控范围?
4. 备份文件在存储端是否有丢失、过期、损坏?

围绕这四点,可将 RMAN 备份监控的“关键指标”提炼为九大类、二十七个量化字段。每个指标给出含义、阈值建议、查询或脚本示例,并注明“告警级别”与“常见根因”,方便直接落地。

──────────────────
一、时间类指标(SLA 核心)
1. 备份窗口利用率 Backup_Window_Usage
含义:实际耗时 / 允许窗口(%)。
阈值:>90% 黄色、>100% 红色。
SQL:
```
SELECT ROUND(elapsed_seconds/7200*100,1) pct
FROM v$rman_backup_job_details
WHERE start_time > SYSDATE-1
AND input_type='DB FULL';
```
根因:数据量暴增、压缩算法降级、网络抖动。

2. 预估剩余时间 Estimated_Time_Left
来源:v$session_longops.time_remaining。
阈值:若剩余时间 > 窗口剩余 20%,提前预警。

──────────────────
二、结果类指标(成功/失败)
3. 备份状态 Status
0=成功,1=失败,2=警告。
直接取自 v$rman_backup_job_details.status,失败即 Sev-1 告警。

4. 备份片有效性 Available_Pieces
crosscheck 后状态为 ‘AVAILABLE’ 的片数 / 总片数。
阈值:<100% 立即红色告警。

──────────────────
三、数据一致性指标(可恢复性)
5. 控制文件自动备份是否开启 Autobackup_Enabled
`SELECT value FROM v$rman_configuration WHERE name='CONTROLFILE AUTOBACKUP';`
必须是 ON,否则无法从裸机恢复。

6. 备份校验状态 Validation_Status
`restore validate check logical` 后无 ORA- 错误。
失败即 Sev-1,直接阻断下游 obsolete 删除。

──────────────────
四、容量类指标(存储安全)
7. Fast Recovery Area 使用率 FRA_Usage_Pct
```
SELECT ROUND(space_used/space_limit*100,1) pct
FROM v$recovery_area_usage
WHERE file_type='RECLAIM';
```
阈值:>80% 黄色,>90% 红色。

8. 备份目标目录剩余空间 Backup_Dir_Free_GB
OS 级 `df -BG | awk '$NF=="/backup"{print $4}'`,<15% 红色。

9. 过期备份片数 Obsolete_Pieces
`report obsolete` 行数,>0 且未删除需工单跟踪。

──────────────────
五、性能类指标(对生产冲击)
10. 备份吞吐 Backup_Throughput_MBps
```
SELECT ROUND(output_bytes/1024/1024/elapsed_seconds,1) mbps
FROM v$rman_backup_job_details
WHERE start_time > SYSDATE-1;
```
阈值:低于基线 30% 黄色。

11. 并行通道数 Parallelism
v$rman_backup_subjob_details 中并行通道数,与 CPU 核数对比,>80% 核数则黄色。

12. 压缩比 Compression_Ratio
input_bytes / output_bytes,低于历史均值 20% 需排查算法或数据类型变化。

──────────────────
六、网络/磁带接口指标
13. SBT 错误码 SBT_Errors
rman trace 中 ORA-19511/ORA-27000 系列,出现一次即红色。

14. 网络重传率 Network_Retrans
若备份到远端 NFS/S3,用 OS 工具 `sar -n ETCP 1` 监控 Retrans/s >5 预警。

──────────────────
七、元数据一致性指标
15. Catalog 同步延迟 Catalog_Lag_Min
恢复目录库与目标库备份记录差异时间,>30 分钟黄色。
SQL:
```
SELECT MAX(start_time) target_max,
MAX(start_time) catalog_max,
ROUND((MAX_TARGET-MAX_CATALOG)*24*60,1) lag_min
FROM (SELECT MAX(start_time) max_target FROM v$rman_backup_job_details)
, (SELECT MAX(start_time) max_catalog FROM rc_backup_set);
```

16. Crosscheck 差异 Crosscheck_Delta
crosscheck 后 `expired` 片数,>0 即工单。

──────────────────
八、归档与 Redo 指标
17. 归档未备份数 Unbackuped_Arch
```
SELECT COUNT(*) FROM v$archived_log
WHERE backup_count=0 AND archived='YES';
```
阈值:>10 黄色(依业务事务量调整)。

18. 归档延迟归档到备份时间 Arch_Backup_Lag_Min
归档生成时间与备份完成时间差值,>60 分钟预警。

──────────────────
九、演练与合规指标
19. 恢复演练周期 Restore_Drill_Days
最近一次 duplicate/restore 测试成功日期距今天数,>90 天红色。

20. 备份加密状态 Encryption_Enabled
`SELECT value FROM v$rman_configuration WHERE name='ENCRYPTION FOR DATABASE';`
合规要求为 ON 却为 OFF 即红色。

──────────────────
落地示例:一键监控视图
为便于统一告警,可将关键指标整合成一张 DBA_BACKUP_KPI 表,每 10 分钟 MERGE 最新值。核心字段:
- kpi_code(上述 1-20)
- kpi_value
- threshold_yellow
- threshold_red
- alert_status(GREEN/YELLOW/RED)
- check_time

然后用 Prometheus exporter 或 Zabbix 低级别发现(LLD)将整张表映射为 metrics,Grafana 出图并分级告警。

结语
RMAN 备份监控的关键指标绝不是“备份成功”四个字,而是围绕“时间、结果、一致、容量、性能、网络、元数据、归档、合规”九大类、二十七个可量化字段构成的立体矩阵。当这些指标全部落在绿色区间时,DBA 才能在下一个凌晨安心睡觉。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论