在 MS SQL Server 下,您可以使用master.sys.sysprocesses和master.sys.dm_exec_connections系统视图来检索给定 TCP/IP 客户端连接的 MAC 地址和 IP 地址。
有没有办法在 Oracle 数据库中做到这一点?
提前致谢!
在 MS SQL Server 下,您可以使用master.sys.sysprocesses和master.sys.dm_exec_connections系统视图来检索给定 TCP/IP 客户端连接的 MAC 地址和 IP 地址。
有没有办法在 Oracle 数据库中做到这一点?
提前致谢!
您可以尝试从 sys_context 获取 IP:
SELECT SYS_CONTEXT('USERENV','IP_ADDRESS') FROM dual;
可以通过查询v$session获取客户端的机器名,也可以尝试使用utl_inaddr.get_host_address()获取主机名的IP地址,但是
事实上,我很惊讶 SQL 服务器提供了这些信息——我猜它正在后台进行 ARP 查找以获取给定 IP 地址的 MAC 地址。当然,您可以在应用程序代码中模仿这一点。
为什么需要这些信息?