--可以通过系统提供的utl_inaddr包中的2个函数获得数据库服务器的主机名和ip地址
SQL> set serveroutput on
SQL> exec dbms_output.put_line(utl_inaddr.get_host_name);
XYS
PL/SQL 过程已成功完成。
SQL> exec dbms_output.put_line(utl_inaddr.get_host_address);
192.168.0.252
PL/SQL 过程已成功完成。
----可以通过系统提供的函数获得client端主机名和ip地址,获得client端ip地址时需要注意连接数据库时必须通过tns连接才能获得ip地址,否则不能获得
SQL> select sys_context('userenv','ip_address') from dual;
SYS_CONTEXT('USERENV','IP_ADDRESS')
--------------------------------------------------------------------------------
192.168.0.252
SQL> connect xys/manager
已连接。
SQL> select sys_context('userenv','ip_address') from dual;
SYS_CONTEXT('USERENV','IP_ADDRESS')
--------------------------------------------------------------------------------
SQL> connect xys/manager@orcl
已连接。
SQL> select sys_context('userenv','ip_address') from dual;
SYS_CONTEXT('USERENV','IP_ADDRESS')
--------------------------------------------------------------------------------
192.168.0.252
SQL>
SQL> select sys_context('userenv','terminal') from dual;
SYS_CONTEXT('USERENV','TERMINAL')
--------------------------------------------------------------------------------
XYS
SQL>
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/19602/viewspace-1001881/ ,如需转载,请注明出处,否则将追究法律责任。