zoukankan      html  css  js  c++  java
  • 查询所有连接到ORACLE服务器的客户端IP地址的方法

    利用触发器实现查看所有客户端IP的方法

    收集了网上的一些做法,做个总结,方便以后用,其操作步骤:

    1. 在sys模式下创建一个表,用于记录客户端登录数据库服务器的详细信息。

    1 create table login_history  
    2 (
    3 username varchar2(60), --用户名
    4 machine varchar2(60), --机器名
    5 login_time date, --登录时间
    6 ip varchar2(50) --ip地址
    7 );

    2. 在sys模式下创建一个触发器:

    1 create or replace trigger login_log  
    2 after logon on database
    3 begin
    4 insert into login_history
    5 select username, machine, sysdate, sys_context('userenv', 'ip_address')
    6 from v$session
    7 where audsid = userenv('sessionid');
    8 commit;
    9 end;

    3.  一些查看session数的实例(以sys用户登录)

     1 --查看login_history表
    2 select * from login_history;
    3
    4 --查看当前的所有session数
    5 select count(*) from v$session;
    6
    7 --查看当前的客户端计算机名为RHEL的所有session数
    8 select count(*) from v$session where machine = 'RHEL';
    9
    10 --查看当前的各个客户端计算机的连接数
    11 select count(*) , machine from v$session group by machine;
  • 相关阅读:
    光场显微成像----整理
    清华大学自动化系友论坛——光电智能计算:笔记
    大创记录——Day3.12
    2.17UI bug修复
    beta阶段UI界面改进
    关于UI设计的心得体会-alpha和beta交界期间
    1.30进度
    2018.1.28进度更新
    心·迹 项目简介
    项目组成员介绍
  • 原文地址:https://www.cnblogs.com/cczz_11/p/2343884.html
Copyright © 2011-2022 走看看