[20221104]执行计划一样Plan hash value不同.txt

来源:这里教程网 时间:2026-03-03 18:04:21 作者:

[20221104]执行计划一样Plan hash value不同.txt --//链接:http://blog.itpub.net/267265/viewspace-2921795/ --//里面遇到一个问题就是执行计划一样Plan hash value不同,我还第一次遇到这个问题. --//我开始以为自己遇到什么奇怪的问题,但是我最终测试发现这个版本计算的Plan hash value与别的版本计算结果不同. 1.环境: SYS@192.168.100.235:1521/orcl> @ pr ============================== PORT_STRING                   : x86_64/Linux 2.4.xx VERSION                       : 19.0.0.0.0 BANNER                        : Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production BANNER_FULL                   : Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0 BANNER_LEGACY                 : Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production CON_ID                        : 0 PL/SQL procedure successfully completed. 2.测试: select sysdate From dual ; Plan hash value: 308129442 ------------------------------------------------------------------ | Id  | Operation        | Name | E-Rows | Cost (%CPU)| E-Time   | ------------------------------------------------------------------ |   0 | SELECT STATEMENT |      |        |     2 (100)|          | |   1 |  FAST DUAL       |      |      1 |     2   (0)| 00:00:01 | ------------------------------------------------------------------ --//Plan hash value: 308129442 --//我在其它机器测试,版本11.2.0.4,19.9.0.0.0的环境: --//ODA,19.9.0.0.0 Plan hash value: 1388734953 ------------------------------------------------------------------ | Id  | Operation        | Name | E-Rows | Cost (%CPU)| E-Time   | ------------------------------------------------------------------ |   0 | SELECT STATEMENT |      |        |     2 (100)|          | |   1 |  FAST DUAL       |      |      1 |     2   (0)| 00:00:01 | ------------------------------------------------------------------ --//我自己的测试机器: --//11.2.0.4 Plan hash value: 1388734953 ------------------------------------------------------------------ | Id  | Operation        | Name | E-Rows | Cost (%CPU)| E-Time   | ------------------------------------------------------------------ |   0 | SELECT STATEMENT |      |        |     2 (100)|          | |   1 |  FAST DUAL       |      |      1 |     2   (0)| 00:00:01 | ------------------------------------------------------------------ --//18.3C: Plan hash value: 1388734953 ------------------------------------------------------------------ | Id  | Operation        | Name | E-Rows | Cost (%CPU)| E-Time   | ------------------------------------------------------------------ |   0 | SELECT STATEMENT |      |        |     2 (100)|          | |   1 |  FAST DUAL       |      |      1 |     2   (0)| 00:00:01 | ------------------------------------------------------------------ --//我自己也不知道为什么?也许oracle这个版本改变了Plan hash value计算方法.(19.3.0.0.0) --//大家遇到这样的问题吗?执行如下 select sysdate From dual ; --//看到的Plan hash value:是多少.

相关推荐