如何使用SQL Plus从数据库用户那里获取日志信息?

时间:2019-02-06 13:11:42

标签: sql oracle sqlplus

我们在公司中使用Oracle数据库。出于法规方面的原因,我们需要与所有DB用户进行“报告”,这些报告用于在2018年更新我们软件的数据库以及其登录和注销时间戳记。我知道Oracle有一个跟踪该工具的工具,但不幸的是,我们公司从未使用过该功能,但该功能仍处于停用状态。这样的事情还是有可能得到的吗?

我需要的实际上应该是这样的:
1.列:db用户
2.列:登录时间戳记
3.列:注销时间戳记

可能类似于:

prod_user | 01.02.2018 05:30:05 | 01.02.2018 05:35:30  
prod_user | 02.02.2018 10:06:16 | 02.02.2018 10:48:58

最诚挚的问候

2 个答案:

答案 0 :(得分:2)

否。

除非您在数据库中启用审核和审核连接,否则Oracle默认情况下不会存储用户登录/注销。

来自the AUDIT SESSION documentation

  

此选项为由与实例的连接创建的每个会话生成单个审核记录。审计记录在连接时插入到审计跟踪中,并在断开连接时更新。该记录可以包括连接时间,断开连接时间以及已处理的逻辑和物理I / O等信息。

有关其价值,您可以通过查看管理视图LAST_LOGIN中的列DBA_USERS来访问任何用户的最后登录日期。这是一项常规功能,不需要启用审核。

答案 1 :(得分:0)

如果您使用的用户具有足够的权限,则可以使用DBA_AUDIT_SESSION视图查看所需的信息。 Documentation Oracle 10g