各位前辈,大家好。我是初出茅庐的ORALCE小弟。
遇到个问题,想请教各位。
如果我想查看谁在什么时候对ORALCE做了什么操作,比如查询了什么SQL,建立了什么表的话,如何查看呢?
简单的说,就是查看操作ORACLE的流水账改如何做呢?马上结账
遇到个问题,想请教各位。
如果我想查看谁在什么时候对ORALCE做了什么操作,比如查询了什么SQL,建立了什么表的话,如何查看呢?
简单的说,就是查看操作ORACLE的流水账改如何做呢?马上结账
简单打开审计如下
1、设置参数
alter system set audit_trail=db scope=spfile;
2、重启数据库
3、打开相应的审计(审计选项很多),如,对用户test对表操作的审计
audit table by test;
4、以dba查看审计记录
select * from dba_audit_trail;
更多关于审计
1.我用什么用户登录了数据库
2.我在那个时刻做了select * from TABLEA 的表
如果是查update可以参考如下:
--
begin
SYS.DBMS_LOGMNR.ADD_LOGFILE('C:\oracle\oradata\jhoracle\REDO01.LOG', --这个文件名你要查询你自己机器的名字
sys.dbms_logmnr.New);
end; select min(low_time), max(high_time),
min(low_scn), max(next_scn) -1
from V$logmnr_logs; begin
SYS.DBMS_LOGMNR.START_LOGMNR(Options => sys.dbms_logmnr.DICT_FROM_ONLINE_CATALOG);
end; Select
SCN,
timestamp,
sql_redo,
session# session_num,
username,
session_info
From V$LOGMNR_CONTENTS where sql_redo like '%update%'
Order by 1;
begin
SYS.DBMS_LOGMNR.END_LOGMNR();
end;--