开发者社区> 问答> 正文

pgsql 的sql优化问题

例如oracle的sql 优化 (当某些程序的sql已经出现问题)可以通过hint ,sql profile ,base line 等方法来应急处理。

那pgsql有这样的方法吗?
我知道的pgsql 优化 方法如下:
修改各个操作的cost 来实现执行计划的准确性
修改enable_xxx 的开关
修改geqo的参数

但是对于已经上线的程序而已。cost 和 enable开关无法在会话修改,程序无法立刻修改。
如果在全局修改enable 又影响很大。
这样情况下有什么方法可以把生成的坏的执行计划给替换成好的吗?

展开
收起
燃烧宇宙中 2016-03-30 18:00:07 3184 0
1 条回答
写回答
取消 提交回答
  • 公益是一辈子的事, I am digoal, just do it. 阿里云数据库团队, 擅长PolarDB, PostgreSQL, DuckDB, ADB等, 长期致力于推动开源数据库技术、生态在中国的发展与开源产业人才培养. 曾荣获阿里巴巴麒麟布道师称号、2018届OSCAR开源尖峰人物.

    PostgreSQL 也有hint插件。
    但是一般情况下是用不上的,你的问题可能是统计信息收集不及时造成的。或者是COST 因子设置不当。
    hint的用法:
    http://blog.163.com/digoal@126/blog/static/163877040201511864547547/

    2019-07-17 18:36:30
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
SQL Server 2017 立即下载
GeoMesa on Spark SQL 立即下载
原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载