DB2-Trace-SQL – Wie kann ich einen Trace einrichten, um alle SQL-Anweisungen zu erfassen?
Verwenden Sie diesen Prozess, um alle SQL-Anweisungen für einen bestimmten Zeitraum in DB2 aufzuzeichnen.
Aktion:
#Verbinden zur DB
connect to books USER db2inst1 USING db2inst1
#1-Erstellen des Event Monitors
db2 "CREATE EVENT MONITOR stmon FOR STATEMENTS WRITE TO FILE '/tmp'"
#2 Den Event Monitor aktivieren
db2 SET EVENT MONITOR stmon STATE = 1
#3 Das SQL kann nun ausgeführt werden
Select * from books where publisher_id <6
#4 Den Event Monitor wieder deaktivieren
db2 SET EVENT MONITOR stmon STATE 0
#5 Die Event Monitor trace files nach lesbar umwandeln
db2evmon -path /tmp > /tmp/filtered.out
#6 Interpretieren der events
vi /tmp/filtered.out
grep "Text" /tmp/filtered.out
#7 Den event Monitor wieder löschen
db2 DROP EVENT MONITOR stmon
Bei der folgenden Filterung kommen dann die sql Statements zum Vorschein
$ grep "Text" /tmp/filtered.out Text : Text : select * from books where publisher_id <6 |