12C中关于出现DDL误操作追责小工具

在Oracle 12C中,存在一个可选项,既开启记录DDL日志

在之前的版本中没有可选方法来对DDL操作进行日志记录。进入Oracle 12C后可以将DDL操作写入xml和日志文件中。

这对于了解谁在什么时间执行了create或drop命令是十分有用的。

我们通过将ENABLE_DDL_LOGGING参数设置为TRUE开启该功能

这一参数可以分别在数据库或会话级加以设置。

当此参数为启用状态,所有的DDL命令会记录在$ORACLE_BASE/diag/rdbms/DBNAME/log|ddl 路径下的xml和日志文件中。

一个xml中包含DDL命令,IP地址,时间戳等信息。

这可以帮助确定在什么时候对用户或表进行了删除亦或是一条DDL语句在何时触发。

开启DDL日志功能句法如下:

SQL> ALTER SYSTEM|SESSION SET ENABLE_DDL_LOGGING=TRUE;

下面DDL操作可能会被记录。

·CREATE|ALTER|DROP|TRUNCATE TABLE

·DROP USER

·CREATE|ALTER|DROP PACKAGE|FUNCTION|VIEW|SYNONYM|SEQUENCE

 

功能虽不起眼,但在实际应用中却又有非常大的作用。仅仅增加一个记录DDL操作监控,不会对性能有任何影响,又能在出现失误时将责任明确清楚,防止一些其他厂商的恶意中伤。

 

原文链接:http://ncn.cn/archivers/12c中关于出现ddl误操作追责小工具.html

posted @ 2015-04-19 22:55  C/C++攻城狮  阅读(122)  评论(0)    收藏  举报