新浪博客

oracle如何找出登录会话session的IP地址

2019-03-07 16:39阅读:
1)正在登录会话的IP地址,可以用v$session的client_info列找出。
select s.CLIENT_INFO,s.* from v$session s where s.MACHINE ='WORKGROUP\TDH0WVFP5VCCAMJ'
需要做如下设置:建立一个触发器,
create or replace trigger trg_login_on after logon on database
begin
dbms_application_info.set_client_info( sys_context('userenv','ip_address'));
end;
2)对于历史登录会话的IP地址,在登录会话审计表 dba_audit_trail里。
select comment_text from dba_audit_trail s where s.TIMESTAMP between
to_date('2019-03-07 11:00:00', 'yyyy-mm-dd hh24:mi:ss') and
to_date('2019-03-07 12:00:00', 'yyyy-mm-dd hh24:mi:ss')
and userhost like upper('%MS-2016%');
结果为:Authenticated by: DATABASE; Client address: (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.69.185)(PORT=60135))

我的更多文章

下载客户端阅读体验更佳

APP专享