Oracle记录连接用户IP地址的方法

我们都知道在v$session中记录着客户端的机器名称,但是没有IP,那我们如何让v$session中也记录IP的信息呢?

成都创新互联是一家从事企业网站建设、成都网站制作、做网站、行业门户网站建设、网页设计制作的专业网络公司,拥有经验丰富的网站建设工程师和网页设计人员,具备各种规模与类型网站建设的实力,在网站建设领域树立了自己独特的设计风格。自公司成立以来曾独立设计制作的站点上千余家。

1.首先,利用 DBMS_SESSION 过程包,先执行:

BEGIN
  DBMS_SESSION.set_identifier(SYS_CONTEXT('USERENV', 'IP_ADDRESS'));
END;
/

2.执行触发器

create or replace trigger on_logon_trigger
  after logon ondatabase
begin
  dbms_application_info.set_client_info(sys_context('userenv','ip_address'));
end;
/

注:执行过程包和触发器需要dba权限

3.然后使用管理员用户登陆pl/sql,就可以查看连接上oracle的IP信息

执行查询sql:
select username,
       program,
       machine,
       client_info,
       sys_context('userenv', 'ip_address') as ipadd
  from v$session s
 where username is not null
 order by username, program, machine;

新闻名称:Oracle记录连接用户IP地址的方法
标题路径:https://www.cdcxhl.com/article12/pggedc.html

成都网站建设公司_创新互联,为您提供域名注册网站设计外贸网站建设品牌网站设计自适应网站用户体验

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都做网站