ITPub博客

首页 > 数据库 > PostgreSQL > pg中与执行计划相关的配置(ENABLE_*)参数

pg中与执行计划相关的配置(ENABLE_*)参数

原创 PostgreSQL 作者:yhluffy 时间:2020-05-11 10:19:26 0 删除 编辑


ENABLE_* 参数


在pg中,一些以“ENABLE_*”开头的参数,这些参数提供了影响查询优化器选择不同执行计划的方法。

如果优化器为特定查询选择的执行计划并不是最优的,可以设置这些参数强制优化器选择一个更好的执行计划来临时解决这个问题,

但一般不会在pg中改变这些参数值的默认值。


enable_seqscan:boolean

是否选择全表扫描。实际上并不能完全禁止全表扫描,但是把这个变量关闭会让优化器在存在其他方法时优先选择其他方法


enable_indexscan:boolean

是否选择索引扫描


enable_bitmapscan:boolean

是否选择位图扫描


enable_tidscan:boolean

是否选择位图扫描


enable_nestloop:boolean

多表连接时,是否选择嵌套循环连接。如果设置为“off”,执行计划只有走嵌套循环连接一条路时,优化器也只能选择走这一条路,

但是如果有其他连接方法可走,优化器会优先选择其他方法。


enable_hashjoin:boolean

多表连接时,是否选择hash连接


enable_mergejoin:boolean

多表连接时,是否选择merge连接


enable_hashagg:boolean

是否使用hash聚合


enable_sort:boolean

是否使用明确的排序,如果设置为“off”,执行计划只有排序一条路时,优化器也只能选择这条路,

但是如果有其他连接方法可走,优化器会优先选择其他方法。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31536355/viewspace-2691202/,如需转载,请注明出处,否则将追究法律责任。

上一篇: dba_objects视图
全部评论

注册时间:2018-05-14

  • 博文量
    35
  • 访问量
    22360