如何查询Oracle数据库的 *** 作日志

如何查询Oracle数据库的 *** 作日志,第1张

方法1:使用LogMiner工具

优点:可以完全挖掘日志内容,找出所有执行过的SQL语句

缺点:

1.

如果没有启用归档日志,则只能对联机日志进行挖掘

2.

需要掌握LogMiner的用法

访法2:查看HIST视图

优点:简单,只要使用普通的select语句查询

缺点:Oracle保留约1周的历史,所以要查太早的就不可能了

--

找出哪个数据库用户用什么程序在最近三天执行过delete或truncate

table的 *** 作

举例如下:

SELECT

c.username,

a.program,

b.sql_text,

b.command_type,

a.sample_time

FROM

dba_hist_active_sess_history

a

JOIN

dba_hist_sqltext

b

ON

a.sql_id

=

b.sql_id

JOIN

dba_users

c

ON

a.user_id

=

c.user_id

WHERE

a.sample_time

BETWEEN

SYSDATE

-

3

AND

SYSDATE

AND

b.command_type

IN

(7,

85)

ORDER

BY

a.sample_time

DESC

首先,向你介绍一个动态视图:v$sql

该视图展示最近一段时间所有执行过的sql语句:

select * from v$sql

即可。

如果报错找不到v$sql,一般是权限问题,换sysdba就肯定能查到。

但要注意的是“隐式sql”,很多sql语句是调用执行的,(比如,存储过程中对dbms包的调用,再如执行create 语句所触发的对系统表空间、数据字典的修改等等。),这些语句同样会展现在v$sql中。

还有其它与sql历史记录相关的v$视图,详情可以参考Oracle官方文档《Oracle® Reference》,直接给你个10.2的文档链接,够方便了吧:

http://www.oracle.com/pls/db102/homepage?remark=tahiti

可以按以下方法查找:

1、进入histcite上数据库检索主页,选择检索数据库为“WebofScienceCoreCollection”,输入机构关键词进行检索。

2、检索完毕后,按照被引频次降序排列,选择“SavetoOtherFileFormats”导出机构信息。以上 *** 作便完成了在histcite上查找机构信息的工作。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9858914.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存