嘿所有,所以我试图找到Oracle 11g数据库服务器的IP地址。我从我的台式机托管它,并希望能够从其他地方访问它。
我安装了SQL plus,当我通过SQL 加上命令控制台连接到我的数据库,然后执行select utl_inaddr.get_host_address from dual;
它返回fe80::f1a9:4392:5e20:2adc%11
,它似乎是一个IPv6地址。我需要一个IPv4地址才能做我想做的事。
浏览后我似乎注意到select sys_context('USERENV','IP_ADDRESS') from dual;
返回IPv4地址(或者至少应该),但它不会为我返回任何内容。
我是否需要对口译员或某些事情进行一些修改才能使其发挥作用?看起来好像我的数据库不可访问,除非我在托管它的同一个盒子上。
如果有助于解决此问题,我可以发布任何其他数据/配置。有关如何正确设置此数据库以便远程访问的任何建议都会很棒!谢谢!
答案 0 :(得分:0)
服务器的地址将是您网络上其他人的PC地址。如果您尝试从本地网络外部访问它,那么它将是您路由器的IP地址,并且您需要将适当的端口(通常是1521用于Oracle)转发到您的PC 。假设你和互联网之间只有一个NAT层。
答案 1 :(得分:0)
使用sqlplus或sqldeveloper登录后执行此操作
SELECT sys_context('userenv','server_host') FROM DUAL;