【问题标题】:Visual/debugging enhancements for Oracle SQL explain plans?Oracle SQL 解释计划的可视化/调试增强?
【发布时间】:2019-08-12 19:25:41
【问题描述】:

我正在使用 Eclipse(及其数据工具插件)进行 DB/BI 开发,并且希望获得更多可视化/调试辅助在检查巨大的解释计划时,例如最多 500 行,例如:

----------------------------------------------------------------------------------------------------------------------------------------------
 | Id  | Operation                                             | Name                         | Rows  | Bytes |TempSpc| Cost (%CPU)| Time     |
 ----------------------------------------------------------------------------------------------------------------------------------------------
 |   0 | SELECT STATEMENT                                      |                              |  4077K|    21G|       |  7224K  (3)| 00:04:43 |
 |   1 |  SORT AGGREGATE                                       |                              |     1 |    15 |       |            |          |
 |*  2 |   TABLE ACCESS BY INDEX ROWID BATCHED                 | TAB1                         |     1 |    15 |       |     2   (0)| 00:00:01 |
 |*  3 |    INDEX RANGE SCAN                                   | IDX_FK_1111111111            |     1 |       |       |     1   (0)| 00:00:01 |
 |   4 |  SORT AGGREGATE                                       |                              |     1 |    15 |       |            |          |
 |*  5 |   TABLE ACCESS BY INDEX ROWID BATCHED                 | TAB1                         |     1 |    15 |       |     2   (0)| 00:00:01 |
 |*  6 |    INDEX RANGE SCAN                                   | IDX_FK_2222222222            |     1 |       |       |     1   (0)| 00:00:01 |
 |   7 |  WINDOW SORT                                          |                              |   153 |  5967 |       |    32   (7)| 00:00:01 |
 |*  8 |   HASH JOIN                                           |                              |   153 |  5967 |       |    31   (4)| 00:00:01 |
 ...

留在 Eclipse 中会很好,所以我不必设置/更改环境。

(我认为 SQL Developer 和/或 Toad 有一些带有分层折叠/展开功能的图形解释计划查看器,其中还有一些 Toad Eclipse 插件可用,但我不喜欢它,因为它在项目操作方面非常具有侵入性。)

但请随意添加其他类似工具的答案,也许还可以为具有相似需求但环境不同的用户添加屏幕截图

【问题讨论】:

标签: sql oracle eclipse-plugin sql-execution-plan


【解决方案1】:

【讨论】:

  • 谢谢!看起来不错。虽然看起来好像必须设置它(作为 Web 应用程序服务器)或至少在 oracle 主机上启动它,这可能并不容易?
  • 您不需要设置它。默认开启。如果您想实时观看查询,则需要使用 EM 或 EMEcpress。但如果你只是想查看最终输出,只需生成 html 文件并在浏览器中打开即可:)
【解决方案2】:

将以下简单的正则表达式查找/替换字符串应用于文本解释计划,可以得到很好的结果:
(例如,在 Eclipse 中的包含解释计划的 Editor (View) 中启用/推送Editbox Eclipse Plugin Button - 任何其他具有类似块显示/突出显示功能的编辑器也可以)

找到:^( \|[^|]+\d \|)(\s+)

替换:$2$1

将产生以下输出(将操作缩进移动到每行的开头):

要获得这种着色,必须以这种方式调整Editbox (Eclipse -> Window -> Preferences-> Editbox -> Others):

  • Highlight selected box:
    • color <Custom> <Red>width <2>
  • Color levels: 14
  • Gradient tool:(例如)from color <white> to & <dark green>(也可以推送Generate

(顺便说一句:将鼠标悬停在这样的块上可以按 ALT+Z 这将以文本方式选择整个块,例如便于复制/粘贴。(在适当缩进的 SQL 也可用于部分代码执行))

【讨论】:

    猜你喜欢
    • 2012-12-16
    • 2019-08-12
    • 1970-01-01
    • 1970-01-01
    • 2012-11-12
    • 1970-01-01
    • 1970-01-01
    • 2017-11-05
    • 2013-02-02
    相关资源
    最近更新 更多