3

某人(或某物)实际上错误地更新了我表中的值。我试图找出更新发生的时间。不幸的是,没有为所述表创建审计触发器。

是否有其他方法或日志可以检查和验证在什么时间运行了哪些 SQL 语句?

我曾尝试查看 v$sql 表,但我认为该表并未捕获正在数据库上执行的所有 SQL 语句。例如,我专门做了一个 UPDATE 语句,但它没有在 v$sql 表中捕获。

我可以看一下redo.log吗?但是,我不知道如何解释这个日志。

4

1 回答 1

2

Your only real option is logminer, which isn't for the faint of heart.

The documentation is here: http://docs.oracle.com/cd/B19306_01/server.102/b14215/logminer.htm

v$sql rows may get aged out after a while. Did you account for case sensitivity when looking in v$sql?

select * from v$sql where upper(sql_fulltext) like '%UPDATE%';
于 2012-05-24T11:34:36.303 回答