跳到主要内容

通过审计日志查看操作记录

1. 使用审计功能(AUDIT)

Oracle 的审计功能可以记录对某个表的 DML 操作(INSERT、UPDATE、DELETE 等)。以下是配置和查看审计日志的步骤:

步骤1:启用审计功能

确保数据库启用了审计功能(12c 及以上版本默认启用)。如果未启用,可以在 sqlplus 中使用以下命令:

ALTER SYSTEM SET audit_trail = DB, EXTENDED SCOPE = SPFILE;

然后重启数据库使设置生效。

步骤2:对某表启用审计

假设需要对表 MY_TABLE 进行操作记录审计,可以执行以下语句:

AUDIT INSERT, UPDATE, DELETE ON MY_TABLE BY ACCESS;
  • BY ACCESS:表示每次对表的操作都会记录。

步骤3:查看审计记录

审计记录存储在 DBA_AUDIT_TRAILUSER_AUDIT_TRAIL 视图中。可以通过查询这些视图查看操作记录:

SELECT USERNAME, TIMESTAMP, ACTION_NAME, SQL_TEXT
FROM DBA_AUDIT_TRAIL
WHERE OBJ_NAME = 'MY_TABLE';
  • ACTION_NAME: 表示具体的操作类型,例如 INSERTUPDATE 等。
  • SQL_TEXT: 显示操作的 SQL 语句。