获取session ip

2025-10-22 18:41:12

1、查询v$session并不能明确知道应用的具体功能

select t.MACHINE,t.PROCESS,t.PORT,t.PROGRAM,t.MODULE

from v$session t where username='SA' order by t.MACHINE

获取session ip

2、查询到v$session中客户端信息为空

select t.CLIENT_INFO from v$session t where t.USERNAME='ZXX';

获取session ip

3、 sys_context('userenv','ip_address') 只能获取本地连接ip

select   sys_context('userenv','ip_address'), sys_context('userenv','host') from dual;

如何获取其他主机session的ip呢?

获取session ip

4、添加触发器 

create or replace trigger trg_login_on after logon on database

begin

  dbms_application_info.set_client_info( sys_context('userenv','ip_address'));

end;

一旦有新的session连接,oracle就会将session的ip_address写入到v$session中CLIENT_INFO 字段中

获取session ip

5、缺陷:已经连接进来的session还是不能获取ip,只能和开发人员讨论

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢