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

来源:这里教程网 时间:2026-03-14 19:50:12 作者:

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”,执行计划只有排序一条路时,优化器也只能选择这条路, 但是如果有其他连接方法可走,优化器会优先选择其他方法。

相关推荐