Benutzer-Werkzeuge

Webseiten-Werkzeuge


dba:enable_ddl_logging

DDL Logging aktiveren - Jedes DDL in der Datenbank nachvollziehen

11g/12c Enterprise Edition + Lifecycle Management Pack

Aufgabe: Jedes DDL Statment in der DB soll vollständig aufgezeichnet werden.

Lizenzbedingungen beachten!

Steht eine EE Edition + das „Database Lifecycle Management Pack“ zur Verfügung kann das Thema sehr einfach gelößt werden.

Bzgl. Lizenz siehe hier ⇒ https://docs.oracle.com/en/database/oracle/oracle-database/12.2/dblic/Licensing-Information.html#GUID-68A4128C-4F52-4441-8BC0-A66F5B3EEC35

...
Licensed Parameters:

The init.ora parameter ENABLE_DDL_LOGGING is licensed as part of the Database Lifecycle Management Pack when set to TRUE. When set to TRUE, the database reports schema changes in real time into the database alert log under the message group schema_ddl. The default setting is FALSE.
...

falls das nicht der Fall ist hilft nur eine Trigger Lösung auf Basis des DDL Event Triggers der Datenbank , siehe ⇒ http://psoug.org/reference/ddl_trigger.html


Aktivieren

 -- ENABLE_DDL_LOGGING enables or disables the writing of a subset of data definition language (DDL) 
 -- statements to a DDL log.
 
 
ALTER SYSTEM SET enable_ddl_logging=TRUE 
 
 
SHOW parameter enable_ddl
 
NAME                                 TYPE                              VALUE
------------------------------------ --------------------------------- ---------
enable_ddl_logging                   BOOLEAN                           TRUE

Überwachung

DDL Test:

sqlplus gpi/gpi
 
CREATE TABLE t4 (id NUMBER, text varchar2(255));

Übersicht über die Datei ddl_<SID>.log unter $DIAG_HOME\rdbms\<DBNAME>\<SID>\log:

2018-02-06T14:36:47.217048+01:00
diag_adl:create table t4 (id number, text varchar2(255))

Für mehr Details siehe ddl/log.xml unter $DIAG_HOME\rdbms\<DBNAME>\<SID>\log\ddl:

<msg time='2018-02-06T14:38:42.061+01:00' org_id='oracle' comp_id='rdbms'
 msg_id='opiexe:4695:2946163730' type='UNKNOWN' group='diag_adl'
 level='16' host_id='SATURN' host_addr='fe80::210c:58ee:5e96:d499%13'
 pid='21344'>
 <txt>CREATE TABLE t5 (id NUMBER, text varchar2(255))
 </txt>
</msg>

Quellen

Diese Website verwendet Cookies. Durch die Nutzung der Website stimmen Sie dem Speichern von Cookies auf Ihrem Computer zu. Außerdem bestätigen Sie, dass Sie unsere Datenschutzbestimmungen gelesen und verstanden haben. Wenn Sie nicht einverstanden sind, verlassen Sie die Website.Weitere Information
dba/enable_ddl_logging.txt · Zuletzt geändert: 2018/02/06 14:57 von gpipperr