首页上看到的一个不错的小技巧,收藏一下
今天有人问如果在linux下top显示某个进程CPU很忙,如果从spid找到对应的IP地址。实际上不过是一个反推的过程,一些图形化工具很容易知道termnial,machine,从这些获得IP地址还是需要一点功夫的。一般我以前是ping -a 机器名.现在我一般使用系统触发器CREATE OR REPLACE TRIGGER SYS.on_logon_trigger AFTER LOGON ON DATABASEDECLARE 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 不做端口名称转换。
转自:
http://space.itpub.net/267265/viewspace-765906
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/438414/viewspace-766331/
,如需转载,请注明出处,否则将追究法律责任。