2016-08-01 9 views
0

Ich hatte eine Tabelle in einer DB2-Datenbank, die gelöscht wurde. Gibt es eine Möglichkeit zu bestimmen, wann die Drop-Abfrage ausgeführt wurde?So ermitteln Sie, wann eine Tabelle in einer DB2-Datenbank gelöscht wurde

Die DB2-Installation befindet sich auf einem Windows Server

+0

Ich denke, der einfachste Weg, dies zu tun ist, um die History-Datei zu sehen. Versuchen Sie LIST HISTORY DROPPED TABLE ALL für DB SAMPLE –

Antwort

1

Wenn Sie auf einem IBMi iSeries arbeiten und haben Zugriff auf ein Audit Profil Sie das Audit Journal überprüfen:

DSPAUDJRNE ENTTYP(DO) JRNRCV(*CURCHAIN) 

Referenz: DSPAUDJRNE

+0

Leider ist die DB2-Installation in einem Windows Server. Irgendein anderer Weg? – RedEagle

+0

Leider arbeite ich an einem Windows-Betriebssystem – RedEagle

0

Sie haben 3 Möglichkeiten, dies zu tun:

  1. Sie könnten ein Programm schreiben, das die API verwendet, um Transaktionsprotokolle zu durchlaufen und nach der drop table-Anweisung zu suchen. Dies ist die einzige Option, die keine Vorauskonfiguration erfordert, bevor die Anweisung DROP TABLE ausgeführt wird.

  2. Wenn Sie DB2 10.5 oder neuer verwenden, können Sie die Überwachungsfunktion für create an audit policy verwenden, die OBJMAINT Ereignisse erfasst (einschließlich Löschen von Tabellen). Dies hat

  3. Wenn Sie unter DB2 10.1 oder neuer sind, können Sie eine CHANGE HISTORY event monitor erstellen, die Informationen über DDL-Anweisungen erfassen kann, die ausgeführt werden.

+0

Aufgrund der Tatsache, dass ich eine 9.7-Version verwende ich bin mit Option 1 stecken. Wird es versuchen und Feedback so schnell wie möglich geben – RedEagle

Verwandte Themen