理想情况下,您可以在数据库级别打开跟踪,这将生成一个跟踪文件,其中包含数据库执行的所有活动。
其他替代方案是更改应用程序以记录它将针对数据库执行的所有 SQL。
这篇文章还介绍了一些其他选项(他们通过尝试检测是否发生 SQL 注入来实现)来嗅探数据库活动:
http://www.symantec.com/connect/articles/detecting-sql-injection-oracle
尽管必须在数据库上进行设置,但跟踪将为您提供最真实的结果。 Oracle Fine Grained Auditing如果您使用的是 Oracle 9i 或更高版本,则需要考虑其他事项。