Hvis du bruger Oracle 11g, bør du tage et kig på den hierarkiske profiler, DBMS_HPROF. Dette er et værktøj, som giver dig forløbne tider for alle noderne i et PL/SQL-program. Som navnet antyder, er det især nyttigt til at undersøge programmer, der kalder programmer, der kalder programmer. Den identificerer også timing for SQL-sætninger, der adskiller sig fra funktionskald. Få mere at vide .
Det er en del af standard 11g-implementeringen og er derfor gratis. Nå, når du først har betalt for din licens, er det gratis :)
Som standard gives rettigheder til DBMS_HPROF-pakken ikke til nogen. Så du bliver nødt til at få nogen med SYSDBA-adgang til at se dig rigtigt. Analysen kræver også oprettelse af nogle tabeller. Ingen af disse ting burde være et problem, men jeg ved, at de nogle gange er det.
Ak, du er på en tidligere version. Så det efterlader dig kun med DBMS_PROFILER, som har eksisteret siden 9i. Dette fungerer grundlæggende godt for et enkelt program. Dens største ulempe er, at vi kun kan bruge det på programmer, hvor vi har CREATE-privilegiet (dvs. kun programmer i vores skema, medmindre vi har CREATE ANY PROCEDURE-privilegiet, hvilket normalt betyder at være en DBA). Til profilering af indlejrede SQL-sætninger skal vi også bruge pakken DBMS_TRACE. Få mere at vide.