如何跟踪获取oracle用户密码,Oracle--创建TRIGGER实现跟踪用户登录信息

---创建日志表记录用户登录信息

create  table user_log

(

user_id         VARCHAR2(30),

session_id      NUMBER(10),

host_name       VARCHAR2(30),

last_module     VARCHAR2(30),

logon_day       DATE,

logoff_day      DATE,

elapsed_minutes NUMBER(10)

);

--创建用户登录之后的触发器统计用户登陆时的信息:

create or replace  trigger logon_trigger

after logon on database

begin

insert into user_log

values(

user,

sys_context(‘userenv‘,‘sessionid‘),

sys_context(‘userenv‘,‘host‘),

null,

sysdate,

null,

null

);

end;

select * from user_log;

--创建用户登出之前的触发器统计用户登出时的信息:

create or replace  trigger logoff_trigger

before logoff on database

begin

update user_log

set last_module =

(select module

from v$session

where sys_context(‘USERENV‘, ‘SESSIONID‘) = audsid)

where sys_context(‘USERENV‘, ‘SESSIONID‘) = session_id;

update user_log

set logoff_day = sysdate

where sys_context(‘USERENV‘, ‘SESSIONID‘) = session_id;

update user_log

set elapsed_minutes = round((logoff_day - logon_day) * 1440)

where sys_context(‘USERENV‘, ‘SESSIONID‘) = session_id;

end;

20180110223044555424.bmp

原文:http://www.cnblogs.com/guipeng/p/6508777.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值