oracle被删除dbs如何查看 *** 作日志

oracle被删除dbs如何查看 *** 作日志,第1张

Oracle日志文件查看方法:

1、以sysdba权限用户登录数据库。

2、执行sql语句:select*fromv$logfile

3、结果显示即为日志路径:

4、另外还有其他的 *** 作日志可用以下两个sql语句查询:

select*fromv$sql--(#查看最近所作的 *** 作)select*fromv$sqlarea--(#查看最近所作的 *** 作)

Oracle日志的查看方法:

SQL>select*fromv$sql(#查看最近所作的 *** 作)

SQL>select*fromv$sqlarea(#查看最近所作的 *** 作)

Oracle数据库的所有更改都记录在日志中,从目前来看,分析Oracle日志的唯一方法就是使用Oracle公司提供的LogMiner来进行,因为原始的日志信息我们根本无法看懂,Oracle8i后续版本中自带了LogMiner,而LogMiner就是让我们看懂日志信息的工具,通过这个工具可以:查明数据库的逻辑更改,侦察并更正用户的误 *** 作,执行事后审计,执行变化分析。

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

方法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

1、因为oracle运行在Linux系统下,首先,要连接Linux系统。

2、切换到oracle安装用户下。 我的用户是 oracle。

3、运行oracle的环境变量,在oracle 的根目录下面,运行 soruce .bash_prfile 命令, 以便        输入相关命令。

4、运行命令: cd $ORACLE_HOME 进入oracle的安装目录。

5、在此输入命令: find -name listener.log ,查找监控日志文件。

6、运行命令 cd  到查看到的日志文件目录。

7、运行cat listener.log命令 查看日志文件。


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

原文地址: http://outofmemory.cn/sjk/6705707.html

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

发表评论

登录后才能评论

评论列表(0条)

保存