基于代价的优化器通常能够选择最佳执行计划,但有时却可能选择不合适的执行路径,导致性能低下。这时需要DBA通过hints手动干预,指导优化器选择最优的存取路径和连接类型。例如,当全表扫描比索引扫描更为有效时,可以通过hints指示优化器采用全表扫描。在ORACLE中,hints是一种机制,用于告知优化器如何生成执行计划,包括优化器类型、优化目标(如all_rows或first_rows)、表的访问路径(全表扫描、索引扫描或直接利用rowid)、表间连接类型和顺序,以及语句的并行程度。