视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Oracle配置查询优化器
2020-11-09 10:55:45 责编:小采
文档


查询优化器对于SQL语句的性能非常重要,因为我们写的SQL语句最后被数据库执行,是通过查询优化器生成执行计划实现的。如果查询优

一. 背景介绍

查询优化器对于SQL语句的性能非常重要,因为我们写的SQL语句最后被数据库执行,是通过查询优化器生成执行计划实现的。如果查询优化器生成的执行计划低效,那么就会导致低劣的性能。有一些参数的配置能够影响到查询优化器生成高效的执行计划,但也是有风险的。总之,可以这么说,配置查询优化器的代价是昂贵的,但值得为此付出。

二. 配置线路图

我们可以按照如下图所示的路线,来一个个参数进行配置

下面是对图中标有数字步骤的描述:(后面再详细描述各个参数的含义)

1. 这两个参数需要调整:optimizer_mode 和 db_file_mutiblock_read_count

2. 这一步的参数默认值已经很合适了,通常没必要调整。这些参数主要是要启用或者禁止查询优化器某一些特性

3. 收集系统统计信息和对象统计信息,这一步是必须做到,不过Oracle10g中已经自己做了。

4. 内存中存储数据时选择手动还是自动调整内存的使用量。

5. 自动调整的话,需要设置pga_aggregate_target参数。

6. 手动调整的话,需要设置这些参数。

7. 测试应用程序是否达到预期的性能

8. 如果查询优化器能为大多数SQL生成高效执行计划,则配置成功,,否则需要进行第9步。

9. 如果查询优化器倾向于使用过多或者过少索引,通常需要调整参数optimizer_index_caching和optimizer_index_cost_adj

下载本文
显示全文
专题