找回密码
 立即注册
首页 业界区 业界 Oracle DBA必备脚本:一键获取SQL性能数据,快速定位性 ...

Oracle DBA必备脚本:一键获取SQL性能数据,快速定位性能拐点

瞧蛀 2025-8-18 22:06:47
我们的文章会在微信公众号IT民工的龙马人生和博客网站( www.htz.pw )同步更新 ,欢迎关注收藏,也欢迎大家转载,但是请在文章开始地方标注文章出处,谢谢!
由于博客中有大量代码,通过页面浏览效果更佳。
上面文章Oracle DBA必备脚本:一秒就定位千行执行计划的SQL慢在哪一步中我们谈到如果快速的通过脚本定位到执行计划中哪一步耗时久,这样的场景常常用户性能分析时需要分析SQL执行计划,这样的场景比例其实不到50%,那还有50%的场景是哪些呢?其实就是典型的TP场景中,SQL执行计划突然的情况。基本上日常运维时,开发突然反馈系统突然变慢都属于这种情况。
这种情况下如果快速的定位SQL性能数据和准确的获取性能拐点就非常重要了,因为他是由于SQL优化的基础。sql_stat_by_sqlid.sql脚本会将SQL性能的数据暂时出来,可方便我们快速的查阅相关信息,找到SQL的资源消耗在什么环境、找到性能拐点的资源消耗。此脚本收集了内存、AWR中的SQL的性能数据,大概有如下这些:
  1. 每次执行的平均逻辑读
  2. 每次执行的平均物理读
  3. 每次执行返回的平均行数
  4. 每次执行的每次FETCH的平均
  5. 每次执行平均IO消耗的时间
  6. 每次执行平均CPU的时间
  7. 每次执行平均消耗时间
  8. 每次执行集群等待平均消耗时间
  9. 每次执行PL/SQL代码消耗时间
  10. SQL PROFILE的信息
  11. SQL第一次加载和最后一些加载的时间
  12. ..........
复制代码
上面这些信息是普通版本的SQL性能需要关注的信息,如果是一体机等环境中,需要使用另外的脚本,会将一体机的相信信息也展示出来。有了这些信息,就算是一个新手都可以快速的知道SQL语句的性能指标,下面我们看看在生产中执行的结果。
  1. SYS@HTZ.PW > @sql_stat_by_sqlid.sql
  2. Enter value for sqlid: 6aunkt7qyhnh8
  3. ****************************************************************************************
  4. SQL STATS
  5. ****************************************************************************************
  6. +------------------------------------------------------------------------+
  7. | infromation  from v$sqlstats               |
  8. +------------------------------------------------------------------------+
  9.             CPU(MS)  ELA(MS)     DISK          GET        ROWS      ROWS APPLI(MS) CONCUR(MS) CLUSTER(MS) USER_IO(MS)    PLSQL     JAVA
  10. EXEC       PRE EXEC PRE EXEC PRE EXEC     PRE EXEC    PRE EXEC PRE FETCH  PER EXEC   PER EXEC    PER EXEC    PER EXEC PER EXEC PER EXEC SQL_PROFILE
  11. ---------- -------- -------- -------- ------------ ----------- --------- --------- ---------- ----------- ----------- -------- -------- ---------------
  12. 54101            94       96        4       12,053           1         1         0          0           0           1       83        0
  13. +------------------------------------------------------------------------+
  14. | information from v$sql                 |
  15. +------------------------------------------------------------------------+
  16.                     PLAN  CHI USER        CPU(MS)  ELA(MS)     DISK          GET        ROWS      ROWS APPLI(MS) CONCUR(MS) CLUSTER(MS) USER_IO(MS) FIRST_LOAD_TIME
  17. EXEC          HASH VALUE  NUM NAME       PRE EXEC PRE EXEC PRE EXEC     PRE EXEC    PRE EXEC PRE FETCH  PER EXEC   PER EXEC    PER EXEC    PER EXEC LAST_LOAD_TIME
  18. ---------- ------------- ---- ---------- -------- -------- -------- ------------ ----------- --------- --------- ---------- ----------- ----------- ----------------------
  19. 54101         3415216077    0 HTZHTZZ          94       96        4       12,053           1         1         0          0           0           1 10-31/16:3.10-16/22:3
  20. +------------------------------------------------------------------------+
  21. | information from awr   sysdate-7                                       |
  22. +------------------------------------------------------------------------+
  23.                                   PLAN                     GET     DISK    WRITE              ROWS      ROWS USER_IO(MS)  ELA(MS)  CPU(MS) CLUSTER(MS)    PLSQL
  24. END_TI I NAME               HASH VALUE EXEC           PRE EXEC PRE EXEC PER EXEC ROW_P    PRE EXEC PRE FETCH    PER EXEC PRE EXEC PRE EXEC    PER EXEC PER EXEC
  25. ------ - --------------- ------------- ---------- ------------ -------- -------- ----- ----------- --------- ----------- -------- -------- ----------- --------
  26. 13 19  1 HTZHTZZ            3415216077 1.2K             12,215        0        0 1.2K            0         1         135   90,214   89,405           0       72
  27. 13 20  1 HTZHTZZ            3415216077 739              12,764        0        0 713             0         1          96  100,122   99,264           0       74
  28. 13 21  1 HTZHTZZ            3415216077 397              12,765        2        0 360             0         1         594  101,938  100,677           0       83
  29. 13 22  1 HTZHTZZ            3415216077 379              12,422       11        0 346             0         1       2,249  100,446   97,645           0       81
  30. 13 23  1 HTZHTZZ            3415216077 453              15,431        2        0 431             0         1         408  141,548  140,383           0       76
  31. 14 01  1 HTZHTZZ            3415216077 604              12,710        1        0 593             0         1         355   98,172   97,196           0       73
  32. 14 02  1 HTZHTZZ            3415216077 602              12,434        0        0 579             0         1         120   93,129   92,355           0       71
  33. 14 08  1 HTZHTZZ            3415216077 642              12,881        2        0 620             0         1         508  104,068  102,768           0       85
  34. 14 09  1 HTZHTZZ            3415216077 1.8K             12,377        3        0 1.7K            0         1         936  101,100   98,860           0       88
  35. 14 10  1 HTZHTZZ            3415216077 2.4K             11,885        6        0 2.1K            0         1       1,462   94,225   91,387           0       81
  36. 14 11  1 HTZHTZZ            3415216077 3.5K             11,910        4        0 3.0K            0         1       1,061   96,398   93,815           0       76
  37. 14 12  1 HTZHTZZ            3415216077 3.3K             11,773        4        0 2.9K            0         1         923   91,642   89,481           0       78
  38. 14 13  1 HTZHTZZ            3415216077 925              11,755        1        0 782             0         1         265   86,145   85,151           0       72
  39. 14 14  1 HTZHTZZ            3415216077 758              12,204        1        0 698             0         1         299   92,684   91,642           0       78
  40. 14 15  1 HTZHTZZ            3415216077 2.3K             11,616        2        0 2.1K            0         1         484   87,809   86,229           0       80
  41. 14 16  1 HTZHTZZ            3415216077 3.1K             11,671        4        0 2.8K            0         1       1,024   88,420   86,353           0       81
  42. 14 17  1 HTZHTZZ            3415216077 3.1K             11,882        5        0 2.8K            0         1       1,201   92,026   89,835           0       82
  43. 14 18  1 HTZHTZZ            3415216077 2.1K             12,074        4        0 2.0K            0         1       1,002   95,571   93,587           0       87
  44. 14 19  1 HTZHTZZ            3415216077 1.7K             11,889        1        0 1.6K            0         1         215   84,832   83,884           0       74
  45. 14 20  1 HTZHTZZ            3415216077 982              11,982        1        0 942             0         1         299   86,434   85,465           0       75
  46. 14 21  1 HTZHTZZ            3415216077 746              15,452        3        0 729             0         1         670  142,204  140,804           0       78
  47. 14 22  1 HTZHTZZ            3415216077 542              12,222        1        0 533             0         1         255   91,731   90,818           0       83
  48. 14 23  1 HTZHTZZ            3415216077 421              13,011        1        0 388             0         1         255  106,721  105,822           0       82
  49. 15 00  1 HTZHTZZ            3415216077 514              12,789        2        0 482             0         1         558  101,291  100,016           0       74
  50. 15 01  1 HTZHTZZ            3415216077 595              12,818        2        0 592             0         1         542   98,304   97,130           0       76
  51. 15 02  1 HTZHTZZ            3415216077 586              12,223        0        0 557             0         1          75   89,481   88,741           0       76
  52. 15 08  1 HTZHTZZ            3415216077 787              12,581        1        0 770             0         1         368   98,549   97,406           0       82
  53. 15 09  1 HTZHTZZ            3415216077 1.9K             12,090        2        0 1.8K            0         1         759   98,397   96,465           0       89
  54. 15 10  1 HTZHTZZ            3415216077 2.3K             12,712        5        0 2.0K            0         1       1,282  108,895  106,381           0       83
  55. 15 11  1 HTZHTZZ            3415216077 2.7K             11,992        5        0 2.5K            0         1       1,284   95,666   93,228           0       83
  56. 15 12  1 HTZHTZZ            3415216077 2.6K             11,830        3        0 2.3K            0         1         733   91,010   89,237           0       82
  57. 15 13  1 HTZHTZZ            3415216077 976              11,687        1        0 907             0         1         393   85,830   84,596           0       77
  58. 15 14  1 HTZHTZZ            3415216077 940              11,911        7        0 864             0         1       1,526   90,117   87,823           0       79
  59. 15 15  1 HTZHTZZ            3415216077 1.9K             11,651        4        0 1.8K            0         1       1,064   88,448   86,427           0       88
  60. 15 16  1 HTZHTZZ            3415216077 2.7K             11,934        6        0 2.6K            0         1       1,478   94,327   91,784           0       85
  61. 15 17  1 HTZHTZZ            3415216077 2.8K             11,845        8        0 2.7K            0         1       1,910   93,122   90,082           0       84
  62. 15 18  1 HTZHTZZ            3415216077 1.9K             11,677        4        0 1.8K            0         1       1,017   87,249   85,382           0       83
  63. 15 19  1 HTZHTZZ            3415216077 1.7K             12,021        1        0 1.7K            0         1         301   86,564   85,497           0       72
  64. 15 20  1 HTZHTZZ            3415216077 780              11,837        1        0 719             0         1         305   85,114   84,122           0       76
  65. 15 21  1 HTZHTZZ            3415216077 561              11,833        1        0 544             0         1         326   85,051   84,076           0       80
  66. 15 22  1 HTZHTZZ            3415216077 464              12,475       12        0 447             0         1       2,316   97,709   94,867           0       82
  67. 15 23  1 HTZHTZZ            3415216077 530              11,871        6        0 494             0         1       1,294   87,497   85,646           0       81
  68. 16 00  1 HTZHTZZ            3415216077 373              13,420        6        0 353             0         1       1,231  111,410  109,560           0       86
  69. 16 01  1 HTZHTZZ            3415216077 512              12,509        0        0 485             0         1         185   93,540   92,687           0       73
  70. 16 02  1 HTZHTZZ            3415216077 692              12,197        0        0 680             0         1          45   89,113   88,466           0       75
  71. 16 08  1 HTZHTZZ            3415216077 724              13,241        0        0 702             0         1         123  109,523  108,493           0       81
  72. 16 09  1 HTZHTZZ            3415216077 1.8K             12,268        7        0 1.7K            0         1       1,545  100,614   97,867           0       88
  73. 16 10  1 HTZHTZZ            3415216077 2.4K             12,811        3        0 2.1K            0         1         953  109,591  107,399           0       82
  74. 16 11  1 HTZHTZZ            3415216077 3.1K             11,762        3        0 2.7K            0         1         909   90,988   88,962           0       82
  75. 16 12  1 HTZHTZZ            3415216077 3.0K             12,666        5        0 2.8K            0         1       1,111  103,843  101,713           0       80
  76. 16 13  1 HTZHTZZ            3415216077 716              11,830        2        0 668             0         1         603   88,348   86,973           0       82
  77. 16 14  1 HTZHTZZ            3415216077 649              12,130        4        0 605             0         1         838   92,325   90,700           0       81
  78. 16 15  1 HTZHTZZ            3415216077 1.9K             12,035        3        0 1.8K            0         1         785   94,478   92,643           0       85
  79. 16 16  1 HTZHTZZ            3415216077 3.1K             11,871        3        0 2.9K            0         1         680   90,791   89,060           0       85
  80. 16 17  1 HTZHTZZ            3415216077 2.7K             11,852        4        0 2.4K            0         1         850   90,760   88,916           0       81
  81. 16 18  1 HTZHTZZ            3415216077 1.7K             11,706        6        0 1.7K            0         1       1,371   87,801   85,597           0       85
  82. 16 19  1 HTZHTZZ            3415216077 1.1K             11,845        7        0 1.1K            0         1       1,803   87,542   85,066           0       78
  83. 16 20  1 HTZHTZZ            3415216077 987              12,157        3        0 941             0         1         624   90,511   89,133           0       72
  84. 16 21  1 HTZHTZZ            3415216077 608              12,123        3        0 563             0         1         761   90,295   88,853           0       78
  85. 16 22  1 HTZHTZZ            3415216077 420              13,125        3        0 399             0         1         688  107,535  106,215           0       84
  86. 16 23  1 HTZHTZZ            3415216077 529              12,124        2        0 512             0         1         389   89,849   88,824           0       82
  87. 17 00  1 HTZHTZZ            3415216077 511              12,315        0        0 506             0         1         165   91,344   90,591           0       74
  88. 17 01  1 HTZHTZZ            3415216077 656              12,165        0        0 620             0         1         107   87,803   87,011           0       73
  89. 17 02  1 HTZHTZZ            3415216077 504              12,111        0        0 469             0         1          52   88,290   87,632           0       77
  90. 17 03  1 HTZHTZZ            3415216077 328              12,177        0        0 317             0         1           2   89,923   89,252           0       80
  91. 17 07  1 HTZHTZZ            3415216077 342              13,185        0        0 334             0         1         354  108,719  107,782           0       76
  92. 17 08  1 HTZHTZZ            3415216077 647              12,485        1        0 636             0         1         305   98,428   97,345           0       85
  93. 17 09  1 HTZHTZZ            3415216077 1.8K             12,147        3        0 1.7K            0         0       1,032   98,190   96,118           0       87
  94. 17 10  1 HTZHTZZ            3415216077 2.2K             11,799        3        0 2.0K            0         1         954   92,494   90,221           0       85
  95. 17 11  1 HTZHTZZ            3415216077 2.9K             12,087        3        0 2.7K            0         1         925   97,600   95,208           0       86
  96. 17 12  1 HTZHTZZ            3415216077 2.7K             11,970        4        0 2.5K            0         1       1,256   96,046   93,493           0       84
  97. 17 13  1 HTZHTZZ            3415216077 692              12,269        3        0 641             0         1         766   97,587   95,666           0       82
  98. 17 14  1 HTZHTZZ            3415216077 878              12,003        4        0 815             0         1       1,143   95,158   92,912           0       82
  99. 17 15  1 HTZHTZZ            3415216077 2.0K             12,139        4        0 1.9K            0         1       1,076   98,252   95,849           0       86
  100. 17 16  1 HTZHTZZ            3415216077 2.9K             12,006        6        0 2.7K            0         1       1,454   96,727   93,725           0       83
  101. 17 17  1 HTZHTZZ            3415216077 2.6K             11,880        4        0 2.4K            0         1       1,079   94,449   92,039           0       85
  102. 17 18  1 HTZHTZZ            3415216077 2.2K             12,020        4        0 2.1K            0         1         931   94,669   92,507           0       82
  103. 17 19  1 HTZHTZZ            3415216077 1.3K             11,748        2        0 1.2K            0         1         502   87,374   85,728           0       77
  104. 17 20  1 HTZHTZZ            3415216077 784              12,126        2        0 730             0         1         452   94,925   93,380           0       78
  105. 17 21  1 HTZHTZZ            3415216077 674              12,141        5        0 650             0         1       1,153   95,178   92,800           0       83
  106. 17 22  1 HTZHTZZ            3415216077 649              12,054        3        0 621             0         1         889   94,960   92,795           0       82
  107. 17 23  1 HTZHTZZ            3415216077 697              11,869        6        0 649             0         1       1,383   89,628   87,041           0       77
  108. 18 01  1 HTZHTZZ            3415216077 585              12,740        0        0 563             0         1         137  102,446  101,111           0       78
  109. 18 02  1 HTZHTZZ            3415216077 684              12,212        0        0 660             0         1         144   93,983   92,761           0       76
  110. 18 08  1 HTZHTZZ            3415216077 828              12,515        2        0 820             0         1         667  102,907  100,904           0       83
  111. 18 09  1 HTZHTZZ            3415216077 1.5K             11,917        7        0 1.4K            0         1       1,706   96,399   93,352           0       86
  112. 18 10  1 HTZHTZZ            3415216077 2.3K             11,922        6        0 2.2K            0         1       1,461   97,222   94,227           0       86
  113. 18 11  1 HTZHTZZ            3415216077 2.9K             11,977        4        0 2.7K            0         1         943   95,486   93,162           0       82
  114. 18 12  1 HTZHTZZ            3415216077 2.9K             11,718        3        0 2.7K            0         1         754   90,947   88,798           0       84
  115. 18 13  1 HTZHTZZ            3415216077 775              12,567        2        0 729             0         1         505  103,558  101,732           0       82
  116. 18 14  1 HTZHTZZ            3415216077 847              11,869        3        0 772             0         1         790   92,019   90,051           0       79
  117. 18 15  1 HTZHTZZ            3415216077 2.0K             12,168        5        0 1.8K            0         1       1,397  102,066   99,110           0       86
  118. 18 16  1 HTZHTZZ            3415216077 2.6K             12,041        7        0 2.4K            0         1       2,022   98,458   94,906           0       84
  119. 18 17  1 HTZHTZZ            3415216077 2.5K             12,036        6        0 2.4K            0         1       1,625   96,669   93,730           0       82
  120. 18 18  1 HTZHTZZ            3415216077 1.6K             12,007        2        0 1.5K            0         1         574   93,885   92,016           0       80
  121. 95 rows selected.
复制代码
脚本的获取

脚本已经上传到群,请加群直接下载脚本。
更多与性能相关的脚本

Oracle DBA必备脚本:一秒就定位千行执行计划的SQL慢在哪一步
SQL优化必备脚本:Oracle获取绑定变量的字面SQL文本
SQL性能优化的案例

性能优化:两条SQL索引优化,CPU占用率从40%降至25%
性能调优:分页SQL语句的优化
------------------作者介绍-----------------------
姓名:黄廷忠
现就职:Oracle中国高级服务团队
曾就职:OceanBase、云和恩墨、东方龙马等
电话、微信、QQ:18081072613
个人博客: (http://www.htz.pw)
CSDN地址: (https://blog.csdn.net/wwwhtzpw)
博客园地址: (https://www.cnblogs.com/www-htz-pw)
1.png


来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册