Oracle DB audit trails(Oracle 数据库审计跟踪)
问题描述
某人(或某物)实际上错误地更新了我表中的值.我试图找出更新发生的时间.不幸的是,没有为上述表创建审计触发器.
Someone (or something) actually updated a value in my table wrongly. I am trying to find out when the update happened. Unfortunately, there is no audit trigger being created for the said table.
是否有其他方法或日志可以检查和验证在什么时间运行了哪些 SQL 语句?
Is there other ways or logs that I can check and verify what SQL statements were run at what time?
我曾尝试查看 v$sql 表,但我认为该表并未捕获在数据库上执行的所有 SQL 语句.例如.我特地做了一个UPDATE语句,但是没有在v$sql表中捕获.
I had tried to look at v$sql table, but I don't think that table is capturing all the SQL statements being performed on the database. E.g. I specifically did an UPDATE statement, but it is not captured in the v$sql table.
我可以看看 redo.log 吗?但是,我不知道如何解释此日志.
Can I look at the redo.log? However, I do not know how to interpret this log.
推荐答案
你唯一真正的选择是 logminer,它不适合胆小的人.
Your only real option is logminer, which isn't for the faint of heart.
文档在这里:http://docs.oracle.com/cd/B19306_01/server.102/b14215/logminer.htm
v$sql
行可能会在一段时间后老化.您在查看 v$sql
时是否考虑了区分大小写?
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%';
这篇关于Oracle 数据库审计跟踪的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Oracle 数据库审计跟踪


基础教程推荐
- SQL Server:只有 GROUP BY 中的最后一个条目 2021-01-01
- 如何在 SQL Server 的嵌套过程中处理事务? 2021-01-01
- 使用pyodbc“不安全"的Python多处理和数据库访问? 2022-01-01
- SQL Server 中单行 MERGE/upsert 的语法 2021-01-01
- 将数据从 MS SQL 迁移到 PostgreSQL? 2022-01-01
- 无法在 ubuntu 中启动 mysql 服务器 2021-01-01
- Sql Server 字符串到日期的转换 2021-01-01
- SQL Server 2016更改对象所有者 2022-01-01
- 在 VB.NET 中更新 SQL Server DateTime 列 2021-01-01
- ERROR 2006 (HY000): MySQL 服务器已经消失 2021-01-01