oracle 12c 新特性之二:可以记录DDL日志

教程发布:风哥 教程分类:ITPUX技术网 更新日期:2022-02-12 浏览学习:43

oracle 12c 新特性之二:可以记录DDL日志

oracle 12c 之前的版本中没有什么好方法来对DDL操作进行日志记录。只有通过logmnr 工具对日志进行分析,有时候对误操作的时间点无法判断,分析起来非常麻烦。

在12c R1中,可以将DDL操作写入xml和日志文件中,存放路径$ORACLE_BASE/diag/rdbms/DBNAME/log|ddl, xml文件中包含DDL命令,IP地址,时间戳等信息。

对DDl操作就了如直掌,可以更快的定位到问题和分析。

  以下的DDL语句可能会记录在xml或日志文件中:
CREATE|ALTER|DROP|TRUNCATE TABLE
DROP USER
CREATE|ALTER|DROP PACKAGE|FUNCTION|VIEW|SYNONYM|SEQUENCE[backcolor=#337fe5]

开启DDL日志功能

SQL> ALTER SYSTEM|SESSION SET ENABLE_DDL_LOGGING=TRUE; --可以系统级别和会话级别

以下是验证过程:

SQL> show parameter enable
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
enable_ddl_logging boolean TRUE
enable_pluggable_database boolean TRUE
java_jit_enabled boolean TRUE
max_enabled_roles integer 150
optimizer_features_enable string 12.1.0.1
parallel_fault_tolerance_enabled boolean FALSE
parallel_io_cap_enabled boolean FALSE
query_rewrite_enabled string TRUE
star_transformation_enabled string FALSE
temp_undo_enabled boolean FALSE
trace_enabled boolean TRUE
SQL>
SQL>
SQL> create table test (id number);
Table created.

查看xml日志

[oracle@db12c ddl]$ more log.xml

ALTER DATABASE CLOSE NORMAL



ALTER DATABASE DISMOUNT



ALTER DATABASE OPEN


[backcolor=#ffffff]
[backcolor=#ffffff]create table test (id number) [backcolor=#ffffff]
[backcolor=#ffffff]

[backcolor=#ffffff][oracle@db12c ddl]$ [backcolor=#337fe5]

上面记录了创建时间,机器名,ddl脚本。

本文标签:
网站声明:本文由风哥整理发布,转载请保留此段声明,本站所有内容将不对其使用后果做任何承诺,请读者谨慎使用!
【上一篇】
【下一篇】