Если вы используете Oracle 11g, вы должны взглянуть на иерархический профилировщик, DBMS_HPROF.Это инструмент, который даст вам истекшее время для всех узлов в программе PL / SQL.Как следует из названия, это особенно полезно для исследования программ, которые вызывают программы, которые вызывают программы.Он также определяет время для операторов SQL, отличное от вызовов функций. Узнать больше .
Он является частью стандартного развертывания 11g и, следовательно, является бесплатным.Ну, как только вы заплатили за свою лицензию, она становится бесплатной :)
По умолчанию права на пакет DBMS_HPROF не предоставляются никому.Итак, вам нужно, чтобы кто-нибудь с доступом SYSDBA увидел вас правильно.Анализ также требует создания некоторых таблиц.Ни одна из этих вещей не должна быть проблемой, но я знаю, что иногда они есть.
Увы, у вас более ранняя версия.Так что остается только DBMS_PROFILER, который существует с 9i.Это в основном хорошо работает для одной программы.Его главный недостаток заключается в том, что мы можем использовать его только в тех программах, для которых у нас есть привилегия CREATE (т. Е. Только в программах в нашей схеме, если у нас нет привилегии CREATE ANY PROCEDURE, что обычно означает быть администратором БД).Кроме того, для профилирования встроенных операторов SQL нам необходимо использовать пакет DBMS_TRACE. Узнайте больше.