我通过以下this
用户运行在我的Oracle XE服务器上启用了审核:
sys
当我以SQL> ALTER SYSTEM SET audit_sys_operations=true SCOPE=spfile;
SQL> ALTER SYSTEM SET audit_trail=XML,EXTENDED SCOPE=spfile;
SQL> SHUTDOWN IMMEDIATE
SQL> STARTUP
用户身份运行查询时,xml文件会将查询记录在默认位置(例如sys
)。但是,如果我以不同的用户身份运行查询(例如/u01/app/oracle/admin/XE/adump/xe_ora_2339_1.xml
),则不会在adump目录中的任何文件中进行更新。
我已确认该参数是为test_user
设置的:
test_user
我还尝试重新启动SQL> show parameter audit;
NAME TYPE VALUE
------------------------ ------- ------------------------------
audit_file_dest string /u01/app/oracle/admin/XE/adump
audit_sys_operations boolean TRUE
audit_syslog_level string
audit_trail string XML, EXTENDED
会话(即重新与sqlplus
建立关联),以及停用test_user
,问题仍然存在。
版本信息:Oracle Database 11g Express Edition版本11.2.0.2.0 - 64位生产(通过this docker image)。
答案 0 :(得分:0)
我的问题是,除了启用审计之外,我还需要使用b
命令指定要审核的内容。就我而言,我想要一切,所以我添加了以下内容(this tutorial中提到的命令):
b
请注意,使用AUDIT_TRAIL = XML,EXTENDED(以及所有基于文件的审核设置?),它看起来有一些写入XML文件的缓冲,因为直到我的测试用户才显示查询断开连接,因此如果您缺少日志条目,请尝试将用户注销以查看它是否显示。