Oracle RMAN 通道与并行详解
Oracle RMAN 通道与并行详解
适用版本:Oracle Database 10g / 11g / 12c / 19c / 23ai 文档版本:v1.0 / 2026-07
1. 概述
RMAN 通道与并行决定备份恢复性能[1]:
详细见:Oracle RMAN 备份恢复全集。
2. 通道类型
2.1 DISK
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/u01/backup/%U';
2.2 SBT_TAPE
CONFIGURE CHANNEL DEVICE TYPE 'SBT_TAPE' PARMS 'ENV=(...)';
2.3 混合
CONFIGURE DEVICE TYPE DISK PARALLELISM 4;
CONFIGURE DEVICE TYPE 'SBT_TAPE' PARALLELISM 2;
3. PARALLELISM
3.1 配置
CONFIGURE DEVICE TYPE DISK PARALLELISM 4;
3.2 选择
- CPU 核数
- 磁盘 I/O
- 文件数量
- 一般 4-8
3.3 临时
BACKUP DATABASE PARALLELISM 4;
4. ALLOCATE CHANNEL
4.1 手动
RUN {
ALLOCATE CHANNEL ch1 DEVICE TYPE DISK;
ALLOCATE CHANNEL ch2 DEVICE TYPE DISK;
ALLOCATE CHANNEL ch3 DEVICE TYPE DISK;
ALLOCATE CHANNEL ch4 DEVICE TYPE DISK;
BACKUP DATABASE;
RELEASE CHANNEL ch1;
RELEASE CHANNEL ch2;
RELEASE CHANNEL ch3;
RELEASE CHANNEL ch4;
}
4.2 不同路径
RUN {
ALLOCATE CHANNEL ch1 DEVICE TYPE DISK
FORMAT '/u01/backup/%U';
ALLOCATE CHANNEL ch2 DEVICE TYPE DISK
FORMAT '/u02/backup/%U';
ALLOCATE CHANNEL ch3 DEVICE TYPE DISK
FORMAT '/u03/backup/%U';
ALLOCATE CHANNEL ch4 DEVICE TYPE DISK
FORMAT '/u04/backup/%U';
BACKUP DATABASE;
RELEASE CHANNEL ch1;
RELEASE CHANNEL ch2;
RELEASE CHANNEL ch3;
RELEASE CHANNEL ch4;
}
5. FILESPERSET
5.1 配置
BACKUP DATABASE FILESPERSET 4;
5.2 选择
- 小文件多:8-16
- 大文件少:1-2
- 平衡 I/O
6. MAXOPENFILES
BACKUP DATABASE MAXOPENFILES 8;
7. MAXPIECESIZE
CONFIGURE CHANNEL DEVICE TYPE DISK MAXPIECESIZE 10G;
BACKUP DATABASE MAXPIECESIZE 10G;
8. SECTION SIZE
8.1 大文件并行
BACKUP DATABASE SECTION SIZE 10G;
-- 大文件分片并行
8.2 优势
- 大数据文件
- 多通道处理单文件
- 加速
9. 多路复用
9.1 原理
- 多文件同时读
- 一个备份集
- 平衡 I/O
9.2 配置
CONFIGURE MAXOPENFILES TO 8;
10. 性能调优
10.1 磁盘 I/O
- 多磁盘
- 分散 I/O
- 通道映射到不同磁盘
10.2 网络
- SBT_TAPE 网络带宽
- 压缩
10.3 CPU
- 并行度
- BCT
- 增量
10.4 内存
- LARGE_POOL
- 共享池
11. 监控
11.1 通道
SELECT sid, serial#, opname, sofar, totalwork
FROM v$session_longops
WHERE opname LIKE 'RMAN%';
11.2 等待
SELECT event, total_waits, time_waited
FROM v$session_event
WHERE sid IN (SELECT sid FROM v$session WHERE program LIKE '%rman%');
11.3 性能
SELECT * FROM v$backup_async_io;
SELECT * FROM v$backup_sync_io;
12. 应用场景
12.1 大数据库
- 并行 8+
- 多磁盘
- SECTION SIZE
12.2 小数据库
- 并行 2-4
- 简单
12.3 磁带
- SBT_TAPE
- 并行 2-4
- 压缩
13. 配置示例
13.1 全配置
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
CONFIGURE BACKUP OPTIMIZATION ON;
CONFIGURE DEFAULT DEVICE TYPE TO DISK;
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u01/backup/%F';
CONFIGURE DEVICE TYPE DISK PARALLELISM 4 BACKUP TYPE TO BACKUPSET;
CONFIGURE CHANNEL 1 DEVICE TYPE DISK FORMAT '/u01/backup/%U' MAXPIECESIZE 10G;
CONFIGURE CHANNEL 2 DEVICE TYPE DISK FORMAT '/u02/backup/%U' MAXPIECESIZE 10G;
CONFIGURE CHANNEL 3 DEVICE TYPE DISK FORMAT '/u03/backup/%U' MAXPIECESIZE 10G;
CONFIGURE CHANNEL 4 DEVICE TYPE DISK FORMAT '/u04/backup/%U' MAXPIECESIZE 10G;
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1;
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1;
CONFIGURE MAXSETSIZE TO UNLIMITED;
14. 常见坑与排错
14.1 ORA-19573
- 文件被占用
- 检查
14.2 性能差
- 并行不足
- I/O 瓶颈
- 单磁盘
14.3 通道失败
- 权限
- 磁盘空间
- 网络
15. 最佳实践
- PARALLELISM:4-8
- 多磁盘:分散
- FILESPERSET:合理
- MAXPIECESIZE:管理
- SECTION SIZE:大文件
- BCT:增量
- 监控:性能
- 测试:参数
- 自动化:配置
- 文档:配置
16. 参考资料
[1] Oracle Database Backup and Recovery User’s Guide 19c, “Channels” https://docs.oracle.com/en/database/oracle/oracle-database/19/bradv/