Erfassen von Ereignisdaten für Änderungsprotokoll

Sie können den Ereignismonitor für Änderungsprotokoll verwenden, um Informationen zu Aktivitäten zu erfassen, die möglicherweise Auswirkungen auf die Leistung, das Verhalten und die Stabilität Ihrer Datenbanken und Datenbankverwaltungssysteme haben.

Vorbereitende Schritte

Zur Erstellung eines Ereignismonitors für Änderungsprotokoll und zum Erfassen von Daten mithilfe des Ereignismonitors für Änderungsprotokoll müssen Sie über die Berechtigung DBADM oder SQLADM verfügen.

Informationen zu dieser Task

Der Ereignismonitor für Änderungsprotokoll erfasst Änderungen, die Auswirkungen auf die Ausführung Ihrer regelmäßigen Datenbankworkload haben können. Wenn sich Ihre übliche Auslastung in der Leistung verschlechtert oder Sie unerwartetes Verhalten beobachten, müssen Sie ermitteln, welche Änderungen aufgetreten sind, die das Problem möglicherweise verursachen. Jedes Ereignis, bei dem eine Änderung vorgenommen wird, wird durch die folgenden drei Schlüsselfelder eindeutig angegeben:
Ereigniszeitmarke
Der Zeitpunkt, an dem das Ereignis auftrat.
Ereignis-ID
Ein numerisches Token, das in Fällen, in denen die Ereigniszeitmarke einheitlich ist, die Eindeutigkeit sicherstellt.
Mitglied
Der Datenbankmanagerprozess, in dem das Ereignis auftrat. Die Angabe des Members stellt die globale Eindeutigkeit sicher, da die Ereigniszeitmarke und die Ereignis-ID nur innerhalb eines Members eindeutig sind.

Alle logischen Gruppen enthalten diese drei Felder und für Datensätze oder Zeilen, die demselben Ereignis entsprechen, sind die Werte in diesen Feldern gleich. Diese einheitlichen Werte erleichtern die Verknüpfung von Informationen, auch wenn mehrere unterschiedliche logische Datengruppen vorhanden sind. Dienstprogrammoperationen und Aktualisierungen von Konfigurationsparametern auf unterschiedlichen Membern werden als unterschiedliche Ereignisse erfasst und führen zu unterschiedlichen Werten in diesen Schlüsselfeldern.


e Tabellen, Einschränkungen

Daten des Ereignismonitors für Änderungsprotokoll können nur in Tabellen geschrieben werden, die logischen Datengruppen zugeordnet sind. Der Ereignismonitor für Änderungsprotokoll schreibt nicht in nicht formatierte Ereignistabellen, Dateien oder benannte Pipes.

Prozedur

Führen Sie die folgenden Schritte aus, um detaillierte Informationen zu Aktivitäten zu erfassen, die sich möglicherweise auf die Leistung, das Verhalten oder die Stabilität der Datenbank auswirken:

  1. Entscheiden Sie, welche Änderungsprotokollereignisse für Sie von Interesse sind. Der Ereignismonitor für Änderungsprotokoll kann Ereignisse erfassen, die Folgendes beschreiben:
    • Änderungen an Konfigurationsparametern
    • Änderungen an Registrierdatenbankvariablen
    • DDL-Ausführung
    • Auftreten einer Commitoperation, eines Rollbacks oder eines Rollbacks zum Sicherungspunkt
    • Informationen zum Start des Ereignismonitors
    • Informationen zum Start des Dienstprogramms
    • Informationen zum Dienstprogramm- oder Dateipfad
    • Informationen zum Stopp des Dienstprogramms
    • Informationen zur Dienstprogrammphase
  2. Erstellen Sie einen Ereignismonitor für Änderungsprotokoll mit dem Namen whats_changed mithilfe der Anweisung CREATE EVENT MONITOR FOR CHANGE HISTORY. Verwenden Sie die Klausel WHERE EVENT IN, um die Änderungsprotokollereignisse anzugeben, die erfasst werden sollen. Das folgende Beispiel zeigt, wie ein Ereignismonitor für Änderungsprotokoll erstellt wird, der alle Ereignistypen erfasst:
    CREATE EVENT MONITOR whats_changed 
       FOR CHANGE HISTORY WHERE EVENT IN (ALL)
       WRITE TO TABLE
  3. Aktivieren Sie den Ereignismonitor für Änderungsprotokoll mit dem Namen whats_changed , indem Sie die folgende Anweisung ausführen:
    SET EVENT MONITOR whats_changed STATE 1

Ergebnisse

Jedes Mal, wenn ein Änderungsprotokollereignis stattfindet, während der Ereignismonitor für Änderungsprotokoll aktiv ist (z. B. eine Aktualisierung der Datenbankkonfiguration), werden Informationen zu dem Ereignis in den Tabellen des Ereignismonitors für Änderungsprotokoll erfasst. Vom Ereignismonitor für Änderungsprotokoll werden nur Ereignisse erfasst, die in der Klausel WHERE EVENT IN des Ereignismonitors angegeben sind.

Beispiel