Oracle SQL性能优化调整:
1. 选择合适的优化器
Oracle 的优化器有三种:
- RULE(基于规则)
- COST(基于成本)
- CHOOSE(选择性)
设置默认的优化器可以通过 init.ora
文件中的 OPTIMIZER_MODE
参数进行配置,例如:RULE
、COST
、CHOOSE
、ALL_ROWS
、FIRST_ROWS
。此外,你还可以在 SQL 句级或会话级覆盖该设置。
为了使用 基于成本的优化器(CBO),需要定期运行 ANALYZE
命令,以确保数据库中对象统计信息的准确性。如果优化器模式设置为选择性(CHOOSE),则实际的优化器模式会根据是否运行过 ANALYZE
命令而有所不同。如果表已经被分析过,优化器模式将自动变为 CBO,反之则不然。