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