Trace operācija operētājsistēmas failā ieraksta konkrētus SQL priekšrakstus, kā arī atbilstošo informāciju (vaicājuma plānus un notikumu gaidīšanas), kas tiek izpildīta, kamēr skripts darbojas. Oracle datu bāzē varat izsekot jebkuru patvaļīgu sesiju.
Instrukcijas
1. solis
Pirms sākat izsekošanu, jums jāiespējo statistikas apkopošana, pretējā gadījumā parādīsies faili ar nulles laiku. Lai to izdarītu, jāizpilda vaicājums: alter system set timed_statistics = true Ja jums jāsāk izsekošana pašreizējā sesijā, sistēmas parametrs jāaizstāj ar session.
2. solis
Pārbaudiet, vai maksimālā izmēra faila izmēra atribūts ir iestatīts uz pietiekamu vērtību. Lai to izdarītu, izpildiet atbilstošo SQL vaicājumu: SELECT value FROM v $ param p WHERE name = 'max_dump_file_size' $ param vērtību var iestatīt gan datu bāzes līmenī (mainīt sistēmu), gan sesijas līmenī (mainīt sesiju).
3. solis
Pēc tam identificējiet sesiju, kas jāizseko. Lai to izdarītu, uzziniet kolonnu primārās vērtības: SELECT sid, serial # no v $ system WHERE selection_criteria for_tracing
4. solis
Lai sāktu izsekošanu, attiecīgajā sesijā ir jāiestata notikums 1046. Palaidiet procedūru sys.dbms_system.set_ev un pēc tam nododiet iegūtās sid un sērijas vērtības kā veselu skaitļu parametrus: BEGIN sys.dbms_system.set_ev (sid, serial #, 10046, 8, ’’); BEIGT
5. solis
Lai izslēgtu izsekošanu, mainiet notikuma līmeņa 10046 vērtību no 8 uz 0.
6. solis
Izsekošanas fails tiek parādīts Oracle datu bāzes dump direktorijā (Oracle / admin / databaseSID / udump). Šī faila nosaukums satur OS procesa identifikatoru, kurā tika veikta darbība, un paplašinājums ir.trc. Lai apstrādātu informāciju lasāmā formā, apstrādājiet izsekošanas failu utilītā tkprof: cd C: ORACLEadmindatabaseSIDudump
tkprof file.trc output = my_file.prf Apstrādātajā failā tiks uzskaitītas visas komandas, kas tika izpildītas sesijas laikā.