如何干预执行计划-ORACLE+SQL性能优化(全)

时间:2024-05-15 15:58:43
【文件属性】:

文件名称:如何干预执行计划-ORACLE+SQL性能优化(全)

文件大小:2.32MB

文件格式:PPT

更新时间:2024-05-15 15:58:43

SQL

如何干预执行计划 使用hints提示: 基于代价的优化器在绝大多数情况下它会选择正确的优化器,减轻了DBA的负担。但有时它也聪明反被聪明误,选择了很差的执行计划,使某个语句的执行变得奇慢无比。此时就需要DBA进行人为的干预,告诉优化器使用我们指定的存取路径或连接类型生成执行计划,从而使语句高效的运行。例如: 对于一个特定的语句,执行全表扫描要比执行索引扫描更有效,则我们可以指示优化器使用全表扫描。在ORACLE中,是通过为语句添加hints(提示)来实现干预优化器优化的目的。 hints是oracle提供的一种机制,用来告诉优化器按照我们的告诉它的方式生成执行计划。可以用hints来实现: 1) 使用的优化器的类型 2) 基于代价优化器的优化目标,是all_rows还是first_rows。 3) 表的访问路径,是全表扫描、索引扫描,还是直接利用rowid。 4) 表之间的连接类型 5) 表之间的连接顺序 6) 语句的并行程度


网友评论