2011-02-13 71 views
3

有没有一种方法可以在Windows上配置XE安装,以仅使用localhost接口上的端口而不是外部接口?我想运行它的开发没有任何人能够连接到我的实例。如何在本地主机上运行Oracle XE?

我尝试修改listener.ora和tnsnames.ora文件,将'HOST ='条目更改为localhost。我的hosts文件中有如下一行:

127.0.0.1 localhost 

当我这样做,并重新启动工作服务,先端停止(它不端口8080上监听),我无法连接到该数据库使用JDBC。我碰到下面的错误与JDBC:

Exception in thread "main" java.sql.SQLException: Listener refused the connection 
with the following error: 
ORA-12505, TNS:listener does not currently know of SID given in connect 
descriptor 
The Connection descriptor used by the client was: 
localhost:1521:XE 

我要指出,这两个顶点和JDBC正常工作,如果我改变“HOST =条目回到我的机器的主机名,并重新启动服务。

回答

6

这有两个部分(因为有两个'技术'服务于不同的端口)。

首先是数据库端口1521的侦听器。您使用SQLNET.ORA设置(tcp.invited_nodes)作为软防火墙,因此侦听器将忽略其他节点。

其次,对于8080 PL/SQL网关,您需要使用DBMS_XDB.SETLISTENERLOCALACCESS描述here

+0

谢谢你,为我工作。根据第一个链接的信息修复了这两个问题。我刚刚添加'tcp.validnode_checking =是0​​tcp.invited_nodes =(localhost,<机器主机名>)'到sqlnet.ora文件并重新启动服务,并且它工作。 – Joel 2011-02-13 21:03:23

相关问题