博客
关于我
Oracle未开启审计情况下追踪表变更记录
阅读量:794 次
发布时间:2023-02-25

本文共 641 字,大约阅读时间需要 2 分钟。

数据库审计功能无法使用,LogMiner作为备选方案被选中。数据库版本为10.2.0.4,首先想到的就是审计日志,但审计未开启。于是转向LogMiner进行分析。

通过查询官方文档,发现v$logmnr_contents中包含SESSION_INFO字段,能够获取执行SQL时的用户和主机信息。虽然初步看起来可行,但还需确认具体实现细节。

为了验证这一点,进行了一个简单的测试。通过PL/SQL程序执行dbms_logmnr.add_logfiledbms_logmnr.start_logmnr等函数,发现能够从日志中提取相关信息。具体来说,v$logmnr_contents表中存储了login_usernamesession_info,这些信息能够帮助追踪操作用户和主机。

然而,可能会遇到USERNAMESESSION_INFO为NULL或UNKNOWN的情况。此时可以参考文档ID110301.1,了解解决方案。主要原因可能是补充日志未启用,或重复事务的信息未全部添加到矿业会话中。对于Oracle8i及9i,需要确保transaction_auditing参数为TRUE。对于更高版本的数据库,则需检查supplemental_log_data_min是否为YES。

总的来说,解决方案包括确保补充日志功能正常、添加所有相关重复日志到矿业会话中、设置兼容性参数到8.1.0或更高,以及在适当版本下启用事务审计功能。通过这些步骤,可以有效追踪误操作的用户和主机信息。

转载地址:http://tepfk.baihongyu.com/

你可能感兴趣的文章