Tach’chen.
Kann mir jemand sagen, wie ich bei einem Programm mit
Oracle-DB (XE) Schnittstelle die abgesetzten SQL-Statements
mitschneiden kann? Mein Ziel ist es festzustellen, bei welchen
Aktionen welche Statements an die DB geschickt werden. Gibt es
dafür vielleicht irgendein (Freeware) Tool? Auch vom Redo Log
habe ich schon gehört, aber weiß leider nicht, ob mir das
weiterhelfen würde. Das Live-Mitschneiden wäre mir am
liebsten.
Vielen Dank
TTR
Hallo,
Du könntest die DB in den Trace Modus schalten: INIT.ORA–>
Parameter SQL_TRACE = True. Damit werden ALLE Statemets in ein
Trace File auf dem Server geschrieben (im Udump Verzeichnis).
Dies kann (resp. wird) allerdings die Performance beinflussen.
MIttes TKPROF kannst du anschliessend das TRac File auswerten
Hmm, entweder hab ich es nicht richtig verstanden, oder es ist wirklich kompliziert und unhandlich.
Eine Auswertung (Performance) möchte ich gar nicht vornehmen. Mir würde ausreichen, wenn ich die über den DB-Port eingehenden STatements mitschneiden könnte. Das hätte auch den Vorteil, dass ich nicht die Session beeinflussen müsste, was ich ja im Falle eines Trace tun muss. Hier müsste ich also im Programmcode den Trace starten etc. Eine Analyse müsste sich aber doch auch machen lassen, ohne dass man an den Quellcode muss, oder nicht?
So würde ich mir das vorstellen, und zwar möglichst parallel zum Knöpfedrücken, sonst wird das mit der Nachvollziehbarkeit auch heikel:
Button x gedrückt --> Statement y ausgeführt
Button z gedrückt --> Statements a und b ausgeführt.
Die Tabelle V$sql habe ich mir schon angesehen, nur leider fehlen dort die übergebenen Variablen; sie werden nur ab 1 durchnummeriert dargestellt.
Weiterhin dankbar für Ratschläge
TTR