我想知道从外部进程访问数据库并说执行此操作到数据库返回到进程并说开始,我的存储过程需要多长时间才能执行。
有没有一种简单易行的方法来完成这项非常基本的任务?
当然,关于存储过程执行期间发生的情况以及执行每个任务(插入、plsql 字符串操作等)花费了多少存储过程时间的报告将是一个额外的好处,但我真的只想要一些简单且易于执行的东西使用。 (而且免费)
如果您使用的是 Oracle 11g,您应该查看分层分析器 DBMS_HPROF。这是一个工具,可以为您提供 PL/SQL 程序中所有节点的运行时间。顾名思义,它对于调查调用程序的程序特别有用。它还识别与函数调用不同的 SQL 语句的计时。了解更多.
它是标准 11g 部署的一部分,因此是免费的。好吧,一旦您支付了许可证费用,它就是免费的:)
默认情况下,不会向任何人授予对 DBMS_HPROF 包的权限。因此,您需要让具有 SYSDBA 访问权限的人来了解您的情况。分析还需要创建一些表。这些事情都不应该成为问题,但我知道有时它们确实是问题。
唉,你使用的是早期版本。这样你就只剩下了 DBMS_PROFILER,它从 9i 就已经存在了。这基本上对于单个程序来说效果很好。它的主要缺点是我们只能在具有 CREATE 权限的程序上使用它(即只能在我们的架构中的程序,除非我们具有 CREATE ANY PROCEDURE 权限,这通常意味着成为 DBA)。此外,为了分析嵌入式 SQL 语句,我们需要使用 DBMS_TRACE 包。了解更多。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)