方法1:使用LogMiner工具
优点:可以完全挖掘日志内容,找出所有执行过的SQL语句
缺点:
1 如果没有启用归档日志,则只能对联机日志进行挖掘
2 需要掌握LogMiner的用法
访法2:查看HIST视图
优点:简单,只要使用普通的select语句查询
缺点:Oracle保留约1周的历史,所以要查太早的就不可能了
-- 找出哪个数据库用户用什么程序在最近三天执行过delete或truncate table的 *** 作
举例如下:
SELECT cusername,
aprogram,
bsql_text,
bcommand_type,
asample_time
FROM dba_hist_active_sess_history a
JOIN dba_hist_sqltext b
ON asql_id = bsql_id
JOIN dba_users c
ON auser_id = cuser_id
WHERE asample_time BETWEEN SYSDATE - 3 AND SYSDATE
AND bcommand_type IN (7, 85)
ORDER BY asample_time DESC;
1 oracle select sysdate -时间字段 from table 2 sql server select getdate()-时间字段 from table
查询当天的数据的方法是:
select
from tabname
where trunc(dtcol) = trunc(sysdate)
或者:
select
from tabname
where dtcol >= trunc(sysdate) and dtcol < trunc(sysdate) + 1
select add_months(sysdate, -24) from dual, 如果只要显示年月日的话,则可以这样:
select trunc(add_months(sysdate, -24,'DD') from dual
以上就是关于如何查询oracle数据库 *** 作日志记录全部的内容,包括:如何查询oracle数据库 *** 作日志记录、怎么查询数据库时间字段小于当前系统时间的数据、在数据库中如何查询当天的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)