Oracle RAC 性能优化详解
Oracle RAC 性能优化详解
适用版本:Oracle Database 11g / 12c / 19c / 23ai 文档版本:v1.0 / 2026-07
1. 概述
RAC 性能优化保证集群高效[1]:
详细见:Oracle RAC 性能调优、Oracle RAC Cache Fusion 详解。
2. 性能指标
2.1 Cache Fusion
- gc 等待
- 节点间传输
- 关键
2.2 负载均衡
- 节点均衡
- 服务分布
- 性能
2.3 响应时间
- 查询响应
- 事务响应
- 用户体验
3. Cache Fusion 优化
3.1 减少 Transfer
- 索引
- 分区
- 优化 SQL
3.2 节点亲和
- 服务隔离
- 节点固定
- 数据本地
3.3 网络
- 低延迟
- 高带宽
- HAIP
4. gc 等待优化
4.1 诊断
SELECT event, time_waited, total_waits
FROM v$system_event
WHERE event LIKE 'gc%' ORDER BY time_waited DESC;
4.2 常见事件
- gc cr block 2-way
- gc cr block 3-way
- gc current block 2-way
- gc buffer busy
4.3 优化
- SQL 优化
- 分区
- 服务隔离
- 索引
详细见:Oracle RAC Cache Fusion 详解。
5. 服务隔离
5.1 配置
srvctl add service -d prod -s oltp_svc \
-preferred prod1
srvctl add service -d prod -s report_svc \
-preferred prod2
5.2 优势
- 减少跨节点
- 性能
- 隔离
5.3 应用
- 不同业务
- 不同节点
- 亲和
详细见:Oracle 服务管理详解。
6. 分区优化
6.1 分区
- 按节点分区
- 数据本地
- 减少 Cache Fusion
6.2 分区键
- 业务相关
- 节点分布
- 优化
6.3 Local Index
- 分区级
- 性能
- 优化
详细见:Oracle 分区表性能优化。
7. 网络优化
7.1 Private
- 低延迟
- 高带宽
- HAIP
7.2 带宽
- InfiniBand
- 25G/100G
- 足够
7.3 优化
- MTU
- TCP
- SQLNet
8. 内存优化
8.1 SGA
- Buffer Cache
- Shared Pool
- 调整
8.2 PGA
- 排序
- Hash
- 调整
8.3 节点
- 节点间一致
- 监控
- 优化
详细见:Oracle 内存调优 SGA PGA。
9. I/O 优化
9.1 ASM
- 磁盘分布
- 条带
- 优化
9.2 存储优化
- 独立
- 高速
- 监控
9.3 Exadata
- 智能扫描
- 存储索引
- 性能
10. SQL 优化
10.1 执行计划
- 一致
- 优化
- 监控
10.2 并行
- 合理
- 节点间
- 优化
10.3 绑定变量
- 减少硬解析
- Shared Pool
- 性能
详细见:Oracle SQL 调优最佳实践。
11. 监控
11.1 AWR
@?/rdbms/admin/awrrpt.sql
11.2 ASH
SELECT * FROM v$active_session_history WHERE ...;
11.3 RAC 视图
SELECT * FROM gv$sysstat WHERE name LIKE 'gc%';
SELECT * FROM gv$system_event WHERE event LIKE 'gc%';
12. 热点块
12.1 诊断
SELECT * FROM v$latch_children WHERE name = 'cache buffers chains'
ORDER BY gets DESC;
12.2 优化
- 反向索引
- 分区
- 减少争用
12.3 监控
- 等待事件
- 块争用
- 优化
13. 应用场景
13.1 OLTP
- 服务隔离
- 节点亲和
- 性能
13.2 OLAP
- 并行
- Cache Fusion
- 性能
13.3 混合
- 隔离
- 监控
- 优化
14. 常见问题
14.1 gc 等待高
- Cache Fusion
- 优化 SQL
- 服务隔离
14.2 负载不均
- 服务
- 负载均衡
- 优化
14.3 性能下降
- 诊断
- 优化
- 监控
15. 最佳实践
- 服务隔离:亲和
- 分区:减少 Cache Fusion
- 网络:高速
- HAIP:冗余
- 监控:gc 等待
- SQL:优化
- 内存:调整
- I/O:优化
- 测试:性能
- 文档:配置
16. 参考资料
[1] Oracle Real Application Clusters Administration and Deployment Guide 19c https://docs.oracle.com/en/database/oracle/oracle-database/19/racad/