配置查询优化器

1.配置还是不配置
  没有任何一个参数的选值适用于所有情况
2.配置路线图

3.设置正确的参数
-optimizer_mode 查询优化器依据该值决定哪个是最高效的执行计划
all_rows:获取所的记录更重要
first_rows_n(n=1,10,100...1000)获取前几行更重要
-optimizer_features_enable 保留查询优化器在旧版本上原有的行为
-db_file_multiblock_read_count在多块读的情况下,数据库引擎使用最大I/O大小取决于初始化参数db_file_multiblock_read_count和db_block_size的乘积,因此在多块读时最大的块数是用最大的I/O吞吐量除以一个块的大小。在工作量统计信息不可用时,多块读操作的开销计算有直接影响
无系统统计信息时多块多的系统开销io_cost约=blocks/1.6765*db_file_multiblock_read_count(0.6581次方)
工作量统计信息计划多块操作I/O开销io_cost约=blocks/mbrc * mreadtim/sreadtim
-optimizer_dynamic_sampling查询优化器使用动态采样作为评估依据,取值(0-10)个等级
-optimizer_index_cost_adj 调节索引扫描开销
 io_cost=(blevel+(leaf_blocks+clustering_factor)*selectivity)*optimizer_index_cost_adj/100
-optimizer_index_caching 用于在执行in-list遍历和嵌套循环连接时,指出预计已存在于高速缓存的索引块数
 io_cost=(blevel+leaf_blocks*selectivity)*(1-optimizer_index_caching/100)+clustering_factor*selectivity)*optimizer_index_cost_adj/100
-optimizer_secure_view_merging 用于控制视图合并,可设置为FALSE或TRUE
FALSE允许查询优化器每次都执行视图合并
TRUE只在不会引起安全问题的情况下允许视图合并

4.PGA管理
-workarea_size_policy指定控制工作大小的方式
-pga_aggregate_target指定一个实例可用的总PGA大小
-sort_area_size指定用于合并连接、排序、聚合的工作区大小
-sort_area_retained_size指定用于排序操作的工作区大小
--hash_area_size指定用于hash连接工作区域大小
-bitmap_merge_area_size指定用于合并与位图索引相关工作区大小

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值