ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 从进程号找到IP地址

从进程号找到IP地址

原创 Linux操作系统 作者:shilei1 时间:2013-07-14 08:24:10 0 删除 编辑

今天有人问如果在linux下top显示某个进程CPU很忙,如果从spid找到对应的IP地址。

实际上不过是一个反推的过程,一些图形化工具很容易知道termnial,machine,从这些获得IP地址还是需要一点功夫的。


一般我以前是ping -a 机器名.

现在我一般使用系统触发器
CREATE OR REPLACE TRIGGER SYS.on_logon_trigger
   AFTER LOGON ON DATABASE
DECLARE
   v_client_info   v$session.client_info%TYPE;
   v_sid           v$session.SID%TYPE;
BEGIN
   SELECT SYS_CONTEXT ('userenv', 'ip_address')
     INTO v_client_info
     FROM DUAL;

   DBMS_APPLICATION_INFO.set_client_info (v_client_info);
   --增加的代码
   DBMS_SESSION.set_identifier (v_client_info);

   --EXECUTE IMMEDIATE 'alter session set tracefile_identifier = ''' || REPLACE (NVL (v_client_info, 'local'), '.', '_') || '''';
END;
/


--这样v$session的client_info字段就有IP地址了。[注:如果为NULL是服务器]


实际上还有一个简单的方法就是使用lsof命令:

lsof -i :1521 -n -P | grep

-n 不做网络名转换。
-P 不做端口名称转换。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/196700/viewspace-766220/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2018-10-10

  • 博文量
    546
  • 访问量
    25694